Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
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
项目统一框架
amos-boot-biz
Commits
f442a167
Commit
f442a167
authored
Jun 01, 2024
by
刘凡
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增:新增es数据入库方法
parent
dc18bb94
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
589 additions
and
0 deletions
+589
-0
ElasticSearchClientConfig.java
...in/amos/api/openapi/config/ElasticSearchClientConfig.java
+56
-0
ESCylinderFillingRecordRepository.java
...enapi/face/orm/dao/ESCylinderFillingRecordRepository.java
+11
-0
ESCylinderInfoRepository.java
...os/api/openapi/face/orm/dao/ESCylinderInfoRepository.java
+11
-0
ESCylinderRepository.java
...n/amos/api/openapi/face/orm/dao/ESCylinderRepository.java
+14
-0
ESCylinderFillingRecordDto.java
...i/openapi/face/orm/entity/ESCylinderFillingRecordDto.java
+136
-0
ESCylinderInfoDto.java
...n/amos/api/openapi/face/orm/entity/ESCylinderInfoDto.java
+97
-0
EsCylinder.java
.../yeejoin/amos/api/openapi/face/orm/entity/EsCylinder.java
+87
-0
TmCylinderFillingRecordService.java
.../openapi/face/service/TmCylinderFillingRecordService.java
+65
-0
TmCylinderInfoService.java
.../amos/api/openapi/face/service/TmCylinderInfoService.java
+51
-0
CylinderFillingRecordServiceImpl.java
...lc/biz/service/impl/CylinderFillingRecordServiceImpl.java
+32
-0
CylinderInfoServiceImpl.java
...ylinder/flc/biz/service/impl/CylinderInfoServiceImpl.java
+29
-0
No files found.
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/config/ElasticSearchClientConfig.java
0 → 100644
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
config
;
import
org.apache.http.HttpHost
;
import
org.apache.http.auth.AuthScope
;
import
org.apache.http.auth.UsernamePasswordCredentials
;
import
org.apache.http.client.CredentialsProvider
;
import
org.apache.http.impl.client.BasicCredentialsProvider
;
import
org.elasticsearch.client.RestClient
;
import
org.elasticsearch.client.RestClientBuilder
;
import
org.elasticsearch.client.RestHighLevelClient
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
java.util.Arrays
;
@Configuration
public
class
ElasticSearchClientConfig
{
@Value
(
"${spring.elasticsearch.rest.uris}"
)
private
String
uris
;
@Value
(
"${elasticsearch.username}"
)
private
String
username
;
@Value
(
"${elasticsearch.password}"
)
private
String
password
;
@Bean
(
destroyMethod
=
"close"
)
@Qualifier
(
"highLevelClient"
)
public
RestHighLevelClient
restHighLevelClient
()
{
final
CredentialsProvider
credentialsProvider
=
new
BasicCredentialsProvider
();
credentialsProvider
.
setCredentials
(
AuthScope
.
ANY
,
new
UsernamePasswordCredentials
(
username
,
password
));
try
{
HttpHost
[]
httpHosts
=
Arrays
.
stream
(
uris
.
split
(
","
)).
map
(
HttpHost:
:
create
).
toArray
(
HttpHost
[]::
new
);
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHosts
);
builder
.
setHttpClientConfigCallback
(
httpClientBuilder
->
{
httpClientBuilder
.
disableAuthCaching
();
return
httpClientBuilder
.
setDefaultCredentialsProvider
(
credentialsProvider
);
});
// 该方法接收一个RequestConfig.Builder对象,对该对象进行修改后然后返回。
builder
.
setRequestConfigCallback
(
requestConfigBuilder
->
{
// 连接超时(默认为1秒)
return
requestConfigBuilder
.
setConnectTimeout
(
5000
*
1000
)
// 套接字超时(默认为30秒)//更改客户端的超时限制默认30秒现在改为100*1000分钟
.
setSocketTimeout
(
6000
*
1000
);
});
return
new
RestHighLevelClient
(
builder
);
}
catch
(
Exception
e
)
{
throw
new
IllegalStateException
(
"Invalid ES nodes "
+
"property '"
+
uris
+
"'"
,
e
);
}
}
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/orm/dao/ESCylinderFillingRecordRepository.java
0 → 100644
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
orm
.
dao
;
import
com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderFillingRecordDto
;
import
org.springframework.data.repository.PagingAndSortingRepository
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
ESCylinderFillingRecordRepository
extends
PagingAndSortingRepository
<
ESCylinderFillingRecordDto
,
Long
>
{
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/orm/dao/ESCylinderInfoRepository.java
0 → 100644
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
orm
.
dao
;
import
com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderInfoDto
;
import
org.springframework.data.repository.PagingAndSortingRepository
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
ESCylinderInfoRepository
extends
PagingAndSortingRepository
<
ESCylinderInfoDto
,
Long
>
{
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/orm/dao/ESCylinderRepository.java
0 → 100644
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
orm
.
dao
;
import
com.yeejoin.amos.boot.module.cylinder.api.entity.EsCylinder
;
import
org.springframework.data.repository.PagingAndSortingRepository
;
import
org.springframework.stereotype.Repository
;
/**
* @author fengwang
* @date 2021-09-26.
*/
@Repository
public
interface
ESCylinderRepository
extends
PagingAndSortingRepository
<
EsCylinder
,
Long
>
{
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/orm/entity/ESCylinderFillingRecordDto.java
0 → 100644
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
orm
.
entity
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.elasticsearch.annotations.Document
;
import
org.springframework.data.elasticsearch.annotations.Field
;
import
org.springframework.data.elasticsearch.annotations.FieldType
;
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"cylinder_filling"
,
shards
=
6
,
replicas
=
2
)
public
class
ESCylinderFillingRecordDto
{
@Id
private
Long
sequenceNbr
;
//充装单位
@Field
(
type
=
FieldType
.
Text
)
private
String
fillingUnitName
;
//出厂编号
@Field
(
type
=
FieldType
.
Text
)
private
String
factoryNum
;
//气瓶品种code
@Field
(
type
=
FieldType
.
Integer
)
private
Integer
cylinderVariety
;
//气瓶品种名称
@Field
(
type
=
FieldType
.
Text
)
private
String
cylinderVarietyName
;
//二维码编号
@Field
(
type
=
FieldType
.
Text
)
private
String
qrCode
;
//电子标签编号
@Field
(
type
=
FieldType
.
Text
)
private
String
electronicLabelCode
;
//气瓶唯一标识
@Field
(
type
=
FieldType
.
Text
)
private
String
sequenceCode
;
//单位内部编号
@Field
(
type
=
FieldType
.
Text
)
private
String
unitInnerCode
;
//产权单位名称
@Field
(
type
=
FieldType
.
Text
)
private
String
unitName
;
//气瓶状态code
@Field
(
type
=
FieldType
.
Integer
)
private
Integer
cylinderStatus
;
//气瓶状态名称
@Field
(
type
=
FieldType
.
Text
)
private
String
cylinderStatusStr
;
//充装开始时间
@Field
(
type
=
FieldType
.
Text
)
private
String
fillingStartTime
;
//充装结束时间
@Field
(
type
=
FieldType
.
Text
)
private
String
fillingEndTime
;
//充装人员姓名
@Field
(
type
=
FieldType
.
Text
)
private
String
fillingUser
;
//充装量(Kg)
@Field
(
type
=
FieldType
.
Double
)
private
Double
fillingQuantity
;
//室温
@Field
(
type
=
FieldType
.
Double
)
private
Double
temperature
;
//异常情况
@Field
(
type
=
FieldType
.
Text
)
private
String
abnormalStr
;
//充装前检查人员姓名
@Field
(
type
=
FieldType
.
Text
)
private
String
inspectorUser
;
//充装前检查时间
@Field
(
type
=
FieldType
.
Text
)
private
String
inspectionDate
;
//充装前检查时间毫秒值
@Field
(
type
=
FieldType
.
Long
)
private
Long
inspectionDateMs
;
//充装前检查结果
@Field
(
type
=
FieldType
.
Text
)
private
String
fillingResult
;
//重装后检查人员姓名
@Field
(
type
=
FieldType
.
Text
)
private
String
inspector
;
//重装后检查时间
@Field
(
type
=
FieldType
.
Text
)
private
String
inspectionDateAfter
;
//充装前检查结果毫秒值
@Field
(
type
=
FieldType
.
Long
)
private
Long
inspectionDateAfterMS
;
//重装后检查结果
@Field
(
type
=
FieldType
.
Text
)
private
String
checkResult
;
//appid
@Field
(
type
=
FieldType
.
Text
)
private
String
appId
;
//统一社会信用代码
@Field
(
type
=
FieldType
.
Text
)
private
String
creditCode
;
//行政区划代码
@Field
(
type
=
FieldType
.
Text
)
private
String
regionCode
;
//appid+气瓶唯一标识
private
String
appIdAndSequenceCode
;
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/orm/entity/ESCylinderInfoDto.java
0 → 100644
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
orm
.
entity
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.elasticsearch.annotations.Document
;
import
org.springframework.data.elasticsearch.annotations.Field
;
import
org.springframework.data.elasticsearch.annotations.FieldType
;
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"cylinder_info"
,
shards
=
6
,
replicas
=
2
)
public
class
ESCylinderInfoDto
{
@Id
private
Long
sequenceNbr
;
//产权单位名称
@Field
(
type
=
FieldType
.
Text
)
private
String
unitName
;
//出厂编号
@Field
(
type
=
FieldType
.
Text
)
private
String
factoryNum
;
//气瓶品种code
@Field
(
type
=
FieldType
.
Integer
)
private
Integer
cylinderVariety
;
//气瓶品种名称
@Field
(
type
=
FieldType
.
Text
)
private
String
cylinderVarietyName
;
//二维码标签
@Field
(
type
=
FieldType
.
Text
)
private
String
qrCode
;
//电子标签编号
@Field
(
type
=
FieldType
.
Text
)
private
String
electronicLabelCode
;
//气瓶状态code
@Field
(
type
=
FieldType
.
Integer
)
private
Integer
cylinderStatus
;
//气瓶状态名称
@Field
(
type
=
FieldType
.
Text
)
private
String
cylinderStatusStr
;
//充装介质
@Field
(
type
=
FieldType
.
Text
)
private
String
fillingMediaName
;
//公称压力
@Field
(
type
=
FieldType
.
Double
)
private
Double
nominalWorkPressure
;
//容积
@Field
(
type
=
FieldType
.
Double
)
private
Double
volume
;
//制造日期
@Field
(
type
=
FieldType
.
Text
)
private
String
manufacturingDate
;
//制造单位
@Field
(
type
=
FieldType
.
Text
)
private
String
manufacturingUnit
;
//检验日期
@Field
(
type
=
FieldType
.
Text
)
private
String
inspectionDate
;
//检验日期
@Field
(
type
=
FieldType
.
Long
)
private
Long
inspectionDateMs
;
//气瓶唯一标识
@Field
(
type
=
FieldType
.
Text
)
private
String
sequenceCode
;
//单位内部编号
@Field
(
type
=
FieldType
.
Text
)
private
String
unitInnerCode
;
//appid
@Field
(
type
=
FieldType
.
Text
)
private
String
appId
;
//统一社会信用代码
@Field
(
type
=
FieldType
.
Text
)
private
String
creditCode
;
@Field
(
type
=
FieldType
.
Text
)
private
String
regionCode
;
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/orm/entity/EsCylinder.java
0 → 100644
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
orm
.
entity
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
org.elasticsearch.common.geo.GeoPoint
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.elasticsearch.annotations.Document
;
import
org.springframework.data.elasticsearch.annotations.Field
;
import
org.springframework.data.elasticsearch.annotations.FieldType
;
import
org.springframework.data.elasticsearch.annotations.GeoPointField
;
/**
* @author tb
* @date 2022-04-20.
*/
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"cylinder"
,
shards
=
6
,
replicas
=
2
)
public
class
EsCylinder
{
/**
* 主键
*/
@Id
private
Long
sequenceNbr
;
/**
* 气瓶出厂编号
*/
@Field
(
type
=
FieldType
.
Text
)
private
String
factoryNum
;
// /**
// * 所属省
// */
// @Field(type = FieldType.Text)
// private String province;
//
// /**
// * 所属地市
// */
// @Field(type = FieldType.Text)
// private String city;
//
// /**
// * 所属区县
// */
// @Field(type = FieldType.Text)
// private String district;
//
/**
* 所属区域代码
*/
@Field
(
type
=
FieldType
.
Text
,
searchAnalyzer
=
"ik_max_word"
,
analyzer
=
"ik_max_word"
)
private
String
regionCode
;
/**
* 产权单位名称
*/
@Field
(
type
=
FieldType
.
Text
)
private
String
unitName
;
/**
* 经度
*/
@Field
(
type
=
FieldType
.
Double
)
private
Double
longitude
;
/**
* 纬度
*/
@Field
(
type
=
FieldType
.
Double
)
private
Double
latitude
;
/**
* 经纬度字段
*/
@GeoPointField
private
GeoPoint
location
;
/**
* 地址
*/
@Field
(
type
=
FieldType
.
Text
,
searchAnalyzer
=
"ik_max_word"
,
analyzer
=
"ik_max_word"
)
private
String
address
;
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/service/TmCylinderFillingRecordService.java
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
service
;
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
service
;
import
java.text.ParseException
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
com.baomidou.dynamic.datasource.annotation.DS
;
import
com.yeejoin.amos.api.openapi.face.orm.dao.ESCylinderFillingRecordRepository
;
import
com.yeejoin.amos.boot.biz.common.utils.DateUtils
;
import
com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderFillingRecordDto
;
import
com.yeejoin.amos.boot.module.cylinder.flc.api.entity.CylinderFillingRecord
;
import
com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderFillingRecordMapper
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.ObjectUtils
;
import
org.typroject.tyboot.component.cache.Redis
;
import
org.typroject.tyboot.component.cache.Redis
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
...
@@ -32,6 +43,13 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFillingRecord;
...
@@ -32,6 +43,13 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderFillingRecord;
public
class
TmCylinderFillingRecordService
extends
BaseService
<
TmCylinderFillingRecordModel
,
TmCylinderFillingRecord
,
TmCylinderFillingRecordMapper
>
{
public
class
TmCylinderFillingRecordService
extends
BaseService
<
TmCylinderFillingRecordModel
,
TmCylinderFillingRecord
,
TmCylinderFillingRecordMapper
>
{
@Autowired
@Autowired
private
RedisTemplate
redisTemplate
;
private
RedisTemplate
redisTemplate
;
@Autowired
CylinderFillingRecordMapper
cylinderFillingRecordMapper
;
@Autowired
ESCylinderFillingRecordRepository
esCylinderFillingRecordRepository
;
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
public
String
createCylinderFilling
(
List
<
TmCylinderFillingRecordModel
>
model
)
{
public
String
createCylinderFilling
(
List
<
TmCylinderFillingRecordModel
>
model
)
{
// TODO Auto-generated method stub
// TODO Auto-generated method stub
...
@@ -55,4 +73,51 @@ public class TmCylinderFillingRecordService extends BaseService<TmCylinderFillin
...
@@ -55,4 +73,51 @@ public class TmCylinderFillingRecordService extends BaseService<TmCylinderFillin
public
List
<
String
>
getDateList
()
{
public
List
<
String
>
getDateList
()
{
return
baseMapper
.
getDateList
();
return
baseMapper
.
getDateList
();
}
}
@DS
(
"tzs"
)
public
void
createCylinderFillingRecord
(
List
<
ESCylinderFillingRecordDto
>
cylinderFillingRecord
)
{
if
(!
ObjectUtils
.
isEmpty
(
cylinderFillingRecord
))
{
List
<
String
>
appIds
=
cylinderFillingRecord
.
stream
().
map
(
ESCylinderFillingRecordDto:
:
getAppId
).
collect
(
Collectors
.
toList
());
List
<
String
>
sequenceCodeS
=
cylinderFillingRecord
.
stream
().
map
(
ESCylinderFillingRecordDto:
:
getSequenceCode
).
collect
(
Collectors
.
toList
());
List
<
ESCylinderFillingRecordDto
>
cylinderFillingRecordInfo
=
cylinderFillingRecordMapper
.
getCylinderFillingRecordInfo
(
appIds
,
sequenceCodeS
);
cylinderFillingRecord
.
stream
().
map
(
item
->
{
List
<
ESCylinderFillingRecordDto
>
collect
=
cylinderFillingRecordInfo
.
stream
().
filter
(
e
->
item
.
getAppIdAndSequenceCode
().
equals
(
e
.
getAppIdAndSequenceCode
())).
collect
(
Collectors
.
toList
());
if
(!
ObjectUtils
.
isEmpty
(
collect
))
{
item
.
setUnitName
(
collect
.
get
(
0
).
getUnitName
());
item
.
setFactoryNum
(
collect
.
get
(
0
).
getFactoryNum
());
item
.
setCylinderVariety
(
collect
.
get
(
0
).
getCylinderVariety
());
item
.
setCylinderVarietyName
(
collect
.
get
(
0
).
getCylinderVarietyName
());
item
.
setUnitInnerCode
(
collect
.
get
(
0
).
getUnitInnerCode
());
item
.
setSequenceCode
(
collect
.
get
(
0
).
getSequenceCode
());
item
.
setQrCode
(
collect
.
get
(
0
).
getQrCode
());
item
.
setElectronicLabelCode
(
collect
.
get
(
0
).
getElectronicLabelCode
());
item
.
setAppId
(
collect
.
get
(
0
).
getAppId
());
item
.
setCreditCode
(
collect
.
get
(
0
).
getCreditCode
());
item
.
setRegionCode
(
collect
.
get
(
0
).
getRegionCode
());
try
{
item
.
setInspectionDateMs
(
ObjectUtils
.
isEmpty
(
item
.
getFillingStartTime
())
?
0L
:
DateUtils
.
dateParseWithPattern
(
item
.
getFillingStartTime
()).
getTime
());
item
.
setInspectionDateAfterMS
(
ObjectUtils
.
isEmpty
(
item
.
getFillingEndTime
())
?
0L
:
DateUtils
.
dateParseWithPattern
(
item
.
getFillingEndTime
()).
getTime
());
}
catch
(
ParseException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
return
item
;
}).
collect
(
Collectors
.
toList
());
saveCylinderFillingRecord2ES
(
cylinderFillingRecord
);
}
}
public
void
saveCylinderFillingRecord2ES
(
List
<
ESCylinderFillingRecordDto
>
records
)
{
List
<
String
>
ids
=
new
ArrayList
<>();
for
(
ESCylinderFillingRecordDto
record
:
records
)
{
CylinderFillingRecord
cylinderFillingRecord
=
new
CylinderFillingRecord
();
BeanUtils
.
copyProperties
(
record
,
cylinderFillingRecord
);
ids
.
add
(
String
.
valueOf
(
record
.
getSequenceNbr
()));
}
esCylinderFillingRecordRepository
.
saveAll
(
records
);
cylinderFillingRecordMapper
.
updateCylinderFillingToEsStatus
(
ids
);
}
}
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/service/TmCylinderInfoService.java
View file @
f442a167
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
service
;
package
com
.
yeejoin
.
amos
.
api
.
openapi
.
face
.
service
;
import
java.text.ParseException
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
com.google.common.collect.Lists
;
import
com.yeejoin.amos.api.openapi.face.orm.dao.ESCylinderInfoRepository
;
import
com.yeejoin.amos.boot.biz.common.utils.DateUtils
;
import
com.yeejoin.amos.boot.module.cylinder.api.entity.ESCylinderInfoDto
;
import
com.yeejoin.amos.boot.module.cylinder.flc.api.dto.CylinderInfoDto
;
import
com.yeejoin.amos.boot.module.cylinder.flc.api.mapper.CylinderInfoMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.StopWatch
;
import
org.typroject.tyboot.component.cache.Redis
;
import
org.typroject.tyboot.component.cache.Redis
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
...
@@ -31,9 +43,17 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderInfo;
...
@@ -31,9 +43,17 @@ import com.yeejoin.amos.api.openapi.face.orm.entity.TmCylinderInfo;
* @version $Id: ElevatorService.java, v 0.1 2021年9月30日 下午3:28:55 gwb Exp $
* @version $Id: ElevatorService.java, v 0.1 2021年9月30日 下午3:28:55 gwb Exp $
*/
*/
@Component
@Component
@Slf4j
public
class
TmCylinderInfoService
extends
BaseService
<
TmCylinderInfoModel
,
TmCylinderInfo
,
TmCylinderInfoMapper
>
{
public
class
TmCylinderInfoService
extends
BaseService
<
TmCylinderInfoModel
,
TmCylinderInfo
,
TmCylinderInfoMapper
>
{
@Autowired
@Autowired
private
RedisTemplate
redisTemplate
;
private
RedisTemplate
redisTemplate
;
@Autowired
CylinderInfoMapper
cylinderInfoMapper
;
@Autowired
ESCylinderInfoRepository
esCylinderInfoRepository
;
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
public
String
createCylinderInfo
(
List
<
TmCylinderInfoModel
>
model
)
{
public
String
createCylinderInfo
(
List
<
TmCylinderInfoModel
>
model
)
{
// TODO Auto-generated method stub
// TODO Auto-generated method stub
...
@@ -52,4 +72,35 @@ public class TmCylinderInfoService extends BaseService<TmCylinderInfoModel, TmCy
...
@@ -52,4 +72,35 @@ public class TmCylinderInfoService extends BaseService<TmCylinderInfoModel, TmCy
BizTokenModel
bizTokenModel
=
(
BizTokenModel
)
redisTemplate
.
opsForValue
().
get
(
tokenKey
);
BizTokenModel
bizTokenModel
=
(
BizTokenModel
)
redisTemplate
.
opsForValue
().
get
(
tokenKey
);
return
bizTokenModel
.
getAppId
();
return
bizTokenModel
.
getAppId
();
}
}
public
void
createCylinderInfo2ES
(
CylinderInfoDto
cylinderInfoDto
)
{
List
<
ESCylinderInfoDto
>
esCylinderInfoDto
=
new
ArrayList
<>();
ESCylinderInfoDto
esCylinderInfo
=
new
ESCylinderInfoDto
();
BeanUtils
.
copyProperties
(
cylinderInfoDto
,
esCylinderInfo
);
esCylinderInfoDto
.
add
(
esCylinderInfo
);
try
{
esCylinderInfo
.
setInspectionDateMs
(
ObjectUtils
.
isEmpty
(
esCylinderInfo
.
getInspectionDate
())
?
0L
:
DateUtils
.
dateParse
(
esCylinderInfo
.
getInspectionDate
(),
DateUtils
.
DATE_TIME_PATTERN
).
getTime
());
}
catch
(
ParseException
e
)
{
throw
new
RuntimeException
(
e
);
}
List
<
String
>
ids
=
Lists
.
newArrayList
();
StopWatch
stopWatch
=
new
StopWatch
();
stopWatch
.
start
();
esCylinderInfoRepository
.
saveAll
(
esCylinderInfoDto
);
stopWatch
.
stop
();
if
(
log
.
isInfoEnabled
())
{
log
.
info
(
"存入es耗时:{} 秒"
,
stopWatch
.
getTotalTimeSeconds
());
}
StopWatch
stopWatch1
=
new
StopWatch
();
stopWatch1
.
start
();
cylinderInfoMapper
.
updateEsCylinderInfoStatus
(
ids
);
stopWatch1
.
stop
();
if
(
log
.
isInfoEnabled
())
{
log
.
info
(
"更新业务数据耗时:{} 秒"
,
stopWatch1
.
getTotalTimeSeconds
());
}
}
}
}
amos-boot-system-tzs/amos-boot-module-cylinder/amos-boot-module-cylinder-biz/src/main/java/com/yeejoin/amos/boot/module/cylinder/flc/biz/service/impl/CylinderFillingRecordServiceImpl.java
View file @
f442a167
...
@@ -166,6 +166,38 @@ public class CylinderFillingRecordServiceImpl extends BaseService<CylinderFillin
...
@@ -166,6 +166,38 @@ public class CylinderFillingRecordServiceImpl extends BaseService<CylinderFillin
}
}
}
}
public
void
createCylinderFillingRecord
(
List
<
ESCylinderFillingRecordDto
>
cylinderFillingRecord
)
{
if
(!
ObjectUtils
.
isEmpty
(
cylinderFillingRecord
))
{
List
<
String
>
appIds
=
cylinderFillingRecord
.
stream
().
map
(
ESCylinderFillingRecordDto:
:
getAppId
).
collect
(
Collectors
.
toList
());
List
<
String
>
sequenceCodeS
=
cylinderFillingRecord
.
stream
().
map
(
ESCylinderFillingRecordDto:
:
getSequenceCode
).
collect
(
Collectors
.
toList
());
List
<
ESCylinderFillingRecordDto
>
cylinderFillingRecordInfo
=
cylinderFillingRecordMapper
.
getCylinderFillingRecordInfo
(
appIds
,
sequenceCodeS
);
cylinderFillingRecord
.
stream
().
map
(
item
->
{
List
<
ESCylinderFillingRecordDto
>
collect
=
cylinderFillingRecordInfo
.
stream
().
filter
(
e
->
item
.
getAppIdAndSequenceCode
().
equals
(
e
.
getAppIdAndSequenceCode
())).
collect
(
Collectors
.
toList
());
if
(!
ObjectUtils
.
isEmpty
(
collect
))
{
item
.
setUnitName
(
collect
.
get
(
0
).
getUnitName
());
item
.
setFactoryNum
(
collect
.
get
(
0
).
getFactoryNum
());
item
.
setCylinderVariety
(
collect
.
get
(
0
).
getCylinderVariety
());
item
.
setCylinderVarietyName
(
collect
.
get
(
0
).
getCylinderVarietyName
());
item
.
setUnitInnerCode
(
collect
.
get
(
0
).
getUnitInnerCode
());
item
.
setSequenceCode
(
collect
.
get
(
0
).
getSequenceCode
());
item
.
setQrCode
(
collect
.
get
(
0
).
getQrCode
());
item
.
setElectronicLabelCode
(
collect
.
get
(
0
).
getElectronicLabelCode
());
item
.
setAppId
(
collect
.
get
(
0
).
getAppId
());
item
.
setCreditCode
(
collect
.
get
(
0
).
getCreditCode
());
item
.
setRegionCode
(
collect
.
get
(
0
).
getRegionCode
());
try
{
item
.
setInspectionDateMs
(
ObjectUtils
.
isEmpty
(
item
.
getFillingStartTime
())
?
0L
:
DateUtils
.
dateParseWithPattern
(
item
.
getFillingStartTime
()).
getTime
());
item
.
setInspectionDateAfterMS
(
ObjectUtils
.
isEmpty
(
item
.
getFillingEndTime
())
?
0L
:
DateUtils
.
dateParseWithPattern
(
item
.
getFillingEndTime
()).
getTime
());
}
catch
(
ParseException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
return
item
;
}).
collect
(
Collectors
.
toList
());
saveCylinderFillingRecord2ES
(
cylinderFillingRecord
);
}
}
@Override
@Override
public
List
<
ESCylinderFillingRecordDto
>
getCylinderFillingRecordTest
()
{
public
List
<
ESCylinderFillingRecordDto
>
getCylinderFillingRecordTest
()
{
List
<
ESCylinderFillingRecordDto
>
cylinderFillingRecord
=
cylinderFillingRecordMapper
.
getCylinderFillingRecord
();
List
<
ESCylinderFillingRecordDto
>
cylinderFillingRecord
=
cylinderFillingRecordMapper
.
getCylinderFillingRecord
();
...
...
amos-boot-system-tzs/amos-boot-module-cylinder/amos-boot-module-cylinder-biz/src/main/java/com/yeejoin/amos/boot/module/cylinder/flc/biz/service/impl/CylinderInfoServiceImpl.java
View file @
f442a167
...
@@ -822,6 +822,35 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
...
@@ -822,6 +822,35 @@ public class CylinderInfoServiceImpl extends BaseService<CylinderInfoDto, Cylind
}
}
}
}
public
void
createCylinderInfo2ES
(
CylinderInfoDto
cylinderInfoDto
)
{
List
<
ESCylinderInfoDto
>
esCylinderInfoDto
=
new
ArrayList
<>();
ESCylinderInfoDto
esCylinderInfo
=
new
ESCylinderInfoDto
();
BeanUtils
.
copyProperties
(
cylinderInfoDto
,
esCylinderInfo
);
esCylinderInfoDto
.
add
(
esCylinderInfo
);
try
{
esCylinderInfo
.
setInspectionDateMs
(
ObjectUtils
.
isEmpty
(
esCylinderInfo
.
getInspectionDate
())
?
0L
:
DateUtils
.
dateParse
(
esCylinderInfo
.
getInspectionDate
(),
DateUtils
.
DATE_TIME_PATTERN
).
getTime
());
}
catch
(
ParseException
e
)
{
throw
new
RuntimeException
(
e
);
}
List
<
String
>
ids
=
Lists
.
newArrayList
();
StopWatch
stopWatch
=
new
StopWatch
();
stopWatch
.
start
();
esCylinderInfoRepository
.
saveAll
(
esCylinderInfoDto
);
stopWatch
.
stop
();
if
(
log
.
isInfoEnabled
())
{
log
.
info
(
"存入es耗时:{} 秒"
,
stopWatch
.
getTotalTimeSeconds
());
}
StopWatch
stopWatch1
=
new
StopWatch
();
stopWatch1
.
start
();
cylinderInfoMapper
.
updateEsCylinderInfoStatus
(
ids
);
stopWatch1
.
stop
();
if
(
log
.
isInfoEnabled
())
{
log
.
info
(
"更新业务数据耗时:{} 秒"
,
stopWatch1
.
getTotalTimeSeconds
());
}
}
@Override
@Override
public
Integer
getInfoTotal
()
{
public
Integer
getInfoTotal
()
{
return
cylinderInfoMapper
.
getInfoTotal
();
return
cylinderInfoMapper
.
getInfoTotal
();
...
...
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