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
62e75e42
Commit
62e75e42
authored
Sep 30, 2024
by
tianbo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bugfix:cyl对接气瓶编号唯一校验
parent
00ebf8c6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
42 additions
and
19 deletions
+42
-19
CylinderController.java
...ejoin/amos/api/openapi/controller/CylinderController.java
+0
-0
CylinderFillingDataValidationResultModel.java
.../face/model/CylinderFillingDataValidationResultModel.java
+1
-0
MidEquipRegistrationInfoMapper.java
.../openapi/face/orm/dao/MidEquipRegistrationInfoMapper.java
+15
-4
CylinderFillingDataValidationService.java
...pi/face/service/CylinderFillingDataValidationService.java
+16
-10
TmCylinderFillingService.java
...os/api/openapi/face/service/TmCylinderFillingService.java
+9
-4
CylinderFillingMessage.java
.../boot/module/cylinder/api/dto/CylinderFillingMessage.java
+1
-0
EquipmentCategoryServiceImpl.java
...le/ymt/biz/service/impl/EquipmentCategoryServiceImpl.java
+0
-1
No files found.
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/controller/CylinderController.java
View file @
62e75e42
This diff is collapsed.
Click to expand it.
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/model/CylinderFillingDataValidationResultModel.java
View file @
62e75e42
...
@@ -15,6 +15,7 @@ public class CylinderFillingDataValidationResultModel {
...
@@ -15,6 +15,7 @@ public class CylinderFillingDataValidationResultModel {
private
List
<
String
>
beforeErrorData
;
private
List
<
String
>
beforeErrorData
;
private
List
<
String
>
recordErrorData
;
private
List
<
String
>
recordErrorData
;
private
List
<
String
>
afterErrorData
;
private
List
<
String
>
afterErrorData
;
private
List
<
String
>
seqCodeErrorData
;
private
String
result
=
"success"
;
private
String
result
=
"success"
;
}
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/orm/dao/MidEquipRegistrationInfoMapper.java
View file @
62e75e42
...
@@ -3,8 +3,8 @@ package com.yeejoin.amos.api.openapi.face.orm.dao;
...
@@ -3,8 +3,8 @@ package com.yeejoin.amos.api.openapi.face.orm.dao;
import
com.baomidou.dynamic.datasource.annotation.DS
;
import
com.baomidou.dynamic.datasource.annotation.DS
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipRegistrationInfo
;
import
com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipRegistrationInfo
;
import
org.
springframework.data.jpa.repository.Query
;
import
org.
apache.ibatis.annotations.Param
;
import
org.
springframework.data.repository.query.Param
;
import
org.
apache.ibatis.annotations.Select
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.Set
;
...
@@ -18,6 +18,17 @@ import java.util.Set;
...
@@ -18,6 +18,17 @@ import java.util.Set;
public
interface
MidEquipRegistrationInfoMapper
extends
BaseMapper
<
MidEquipRegistrationInfo
>
{
public
interface
MidEquipRegistrationInfoMapper
extends
BaseMapper
<
MidEquipRegistrationInfo
>
{
@DS
(
"tzs"
)
@DS
(
"tzs"
)
@Query
(
"SELECT DISTINCT r.* FROM idx_biz_jg_use_info i, idx_biz_jg_register_info r WHERE i.data_source like 'jg%' AND i.RECORD = r.RECORD AND r.EQU_CODE IN :values"
)
@Select
(
"<script>"
+
List
<
MidEquipRegistrationInfo
>
getUseInfoByEquipCode
(
@Param
(
"values"
)
Set
<
String
>
sequenceCodes
);
"SELECT DISTINCT sequenceCode FROM "
+
"(SELECT concat ( fi.\"PRODUCE_UNIT_CREDIT_CODE\", '-', fi.\"FACTORY_NUM\" ) sequenceCode "
+
"FROM idx_biz_jg_factory_info fi, idx_biz_jg_other_info oi "
+
"WHERE oi.\"RECORD\" = fi.\"RECORD\" "
+
" AND oi.\"CLAIM_STATUS\" = '已认领' "
+
" AND fi.\"PRODUCE_UNIT_CREDIT_CODE\" IS NOT NULL "
+
" AND fi.\"FACTORY_NUM\" IS NOT NULL) WHERE sequenceCode in "
+
"<foreach item='item' index='index' collection='sequenceCodes' open='(' separator=',' close=')'>"
+
" #{item}"
+
"</foreach>"
+
"</script>"
)
List
<
String
>
getUsedCountBySeqCodes
(
@Param
(
"sequenceCodes"
)
Set
<
String
>
sequenceCodes
);
}
}
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/service/CylinderFillingDataValidationService.java
View file @
62e75e42
...
@@ -5,7 +5,6 @@ import cn.hutool.core.collection.ConcurrentHashSet;
...
@@ -5,7 +5,6 @@ import cn.hutool.core.collection.ConcurrentHashSet;
import
com.yeejoin.amos.api.openapi.enums.*
;
import
com.yeejoin.amos.api.openapi.enums.*
;
import
com.yeejoin.amos.api.openapi.face.model.*
;
import
com.yeejoin.amos.api.openapi.face.model.*
;
import
com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipRegistrationInfoMapper
;
import
com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipRegistrationInfoMapper
;
import
com.yeejoin.amos.api.openapi.face.orm.entity.MidEquipRegistrationInfo
;
import
com.yeejoin.amos.boot.module.cylinder.api.dto.TzBaseEnterpriseInfoDto
;
import
com.yeejoin.amos.boot.module.cylinder.api.dto.TzBaseEnterpriseInfoDto
;
import
net.sf.json.JSONArray
;
import
net.sf.json.JSONArray
;
import
net.sf.json.JSONNull
;
import
net.sf.json.JSONNull
;
...
@@ -193,7 +192,7 @@ public class CylinderFillingDataValidationService {
...
@@ -193,7 +192,7 @@ public class CylinderFillingDataValidationService {
Set
<
String
>
afterErrorCylinderSet
=
new
ConcurrentHashSet
<>();
Set
<
String
>
afterErrorCylinderSet
=
new
ConcurrentHashSet
<>();
CompletableFuture
<
List
<
String
>>
beforeFuture
=
CompletableFuture
.
supplyAsync
(()
->
{
CompletableFuture
<
List
<
String
>>
beforeFuture
=
CompletableFuture
.
supplyAsync
(()
->
{
// 异步校验
检验
前数据
// 异步校验
充装
前数据
JSONArray
fillingBefore
=
jsonobject
.
getJSONArray
(
"fillingBefore"
);
JSONArray
fillingBefore
=
jsonobject
.
getJSONArray
(
"fillingBefore"
);
if
(!
ObjectUtils
.
isEmpty
(
fillingBefore
))
{
if
(!
ObjectUtils
.
isEmpty
(
fillingBefore
))
{
for
(
int
i
=
0
;
i
<
fillingBefore
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
fillingBefore
.
size
();
i
++)
{
...
@@ -204,7 +203,7 @@ public class CylinderFillingDataValidationService {
...
@@ -204,7 +203,7 @@ public class CylinderFillingDataValidationService {
return
validateFillingBeforeData
(
fillingBefore
,
beforeErrorCylinderSet
);
return
validateFillingBeforeData
(
fillingBefore
,
beforeErrorCylinderSet
);
});
});
CompletableFuture
<
List
<
String
>>
recordFuture
=
CompletableFuture
.
supplyAsync
(()
->
{
CompletableFuture
<
List
<
String
>>
recordFuture
=
CompletableFuture
.
supplyAsync
(()
->
{
// 异步校验检
填充
数据
// 异步校验检
充装时
数据
JSONArray
filling
=
jsonobject
.
getJSONArray
(
"filling"
);
JSONArray
filling
=
jsonobject
.
getJSONArray
(
"filling"
);
if
(!
ObjectUtils
.
isEmpty
(
filling
))
{
if
(!
ObjectUtils
.
isEmpty
(
filling
))
{
for
(
int
i
=
0
;
i
<
filling
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
filling
.
size
();
i
++)
{
...
@@ -216,7 +215,7 @@ public class CylinderFillingDataValidationService {
...
@@ -216,7 +215,7 @@ public class CylinderFillingDataValidationService {
});
});
CompletableFuture
<
List
<
String
>>
afterFuture
=
CompletableFuture
.
supplyAsync
(()
->
{
CompletableFuture
<
List
<
String
>>
afterFuture
=
CompletableFuture
.
supplyAsync
(()
->
{
// 异步校验
检填充
后数据
// 异步校验
充装
后数据
JSONArray
fillingAfter
=
jsonobject
.
getJSONArray
(
"fillingAfter"
);
JSONArray
fillingAfter
=
jsonobject
.
getJSONArray
(
"fillingAfter"
);
if
(!
ObjectUtils
.
isEmpty
(
fillingAfter
))
{
if
(!
ObjectUtils
.
isEmpty
(
fillingAfter
))
{
for
(
int
i
=
0
;
i
<
fillingAfter
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
fillingAfter
.
size
();
i
++)
{
...
@@ -224,7 +223,7 @@ public class CylinderFillingDataValidationService {
...
@@ -224,7 +223,7 @@ public class CylinderFillingDataValidationService {
cylinderCodeSet
.
add
(
row
.
getString
(
"sequenceCode"
));
cylinderCodeSet
.
add
(
row
.
getString
(
"sequenceCode"
));
}
}
}
}
return
validateFillin
AfterData
(
jsonobject
.
getJSONArray
(
"fillingAfter"
)
,
afterErrorCylinderSet
);
return
validateFillin
gAfterData
(
fillingAfter
,
afterErrorCylinderSet
);
});
});
/**
/**
...
@@ -236,12 +235,20 @@ public class CylinderFillingDataValidationService {
...
@@ -236,12 +235,20 @@ public class CylinderFillingDataValidationService {
result
.
setAfterErrorData
(
afterFuture
.
get
());
result
.
setAfterErrorData
(
afterFuture
.
get
());
result
.
setCylinderNumber
(
cylinderCodeSet
.
size
());
result
.
setCylinderNumber
(
cylinderCodeSet
.
size
());
result
.
setBeforeErrorCylinderNumber
(
beforeErrorCylinderSet
.
size
());
result
.
setBeforeErrorCylinderNumber
(
beforeErrorCylinderSet
.
size
());
result
.
setRecordErrorCylinderNumber
(
recordErrorCylinderSet
.
size
());
result
.
setRecordErrorCylinderNumber
(
recordErrorCylinderSet
.
size
());
result
.
setAfterErrorCylinderNumber
(
afterErrorCylinderSet
.
size
());
result
.
setAfterErrorCylinderNumber
(
afterErrorCylinderSet
.
size
());
cylinderCodeSet
.
removeAll
(
beforeErrorCylinderSet
);
cylinderCodeSet
.
removeAll
(
beforeErrorCylinderSet
);
cylinderCodeSet
.
removeAll
(
recordErrorCylinderSet
);
cylinderCodeSet
.
removeAll
(
recordErrorCylinderSet
);
cylinderCodeSet
.
removeAll
(
afterErrorCylinderSet
);
cylinderCodeSet
.
removeAll
(
afterErrorCylinderSet
);
if
(!
ObjectUtils
.
isEmpty
(
cylinderCodeSet
))
{
// 检查气瓶唯一标识码在系统是否存在
List
<
String
>
errorRows
=
getNotExistSequenceCodes
(
cylinderCodeSet
);
result
.
setSeqCodeErrorData
(
errorRows
);
}
result
.
setSuccessCylinderNumber
(
cylinderCodeSet
.
size
());
result
.
setSuccessCylinderNumber
(
cylinderCodeSet
.
size
());
return
result
;
return
result
;
}
}
...
@@ -330,7 +337,7 @@ public class CylinderFillingDataValidationService {
...
@@ -330,7 +337,7 @@ public class CylinderFillingDataValidationService {
* @param jsonArray
* @param jsonArray
* @return List 异常数据
* @return List 异常数据
*/
*/
public
List
<
String
>
validateFillinAfterData
(
JSONArray
jsonArray
,
Set
<
String
>
errorCylinderSet
)
{
public
List
<
String
>
validateFillin
g
AfterData
(
JSONArray
jsonArray
,
Set
<
String
>
errorCylinderSet
)
{
// 1.必填校验
// 1.必填校验
List
<
String
>
errorRows
=
validateRequired
(
FillingAfterFieldEnum
.
getAllRequireKeys
(),
jsonArray
);
List
<
String
>
errorRows
=
validateRequired
(
FillingAfterFieldEnum
.
getAllRequireKeys
(),
jsonArray
);
...
@@ -445,10 +452,9 @@ public class CylinderFillingDataValidationService {
...
@@ -445,10 +452,9 @@ public class CylinderFillingDataValidationService {
* @return
* @return
*/
*/
public
List
<
String
>
getNotExistSequenceCodes
(
Set
<
String
>
sequenceCodes
)
{
public
List
<
String
>
getNotExistSequenceCodes
(
Set
<
String
>
sequenceCodes
)
{
List
<
MidEquipRegistrationInfo
>
useInfos
=
registrationInfoMapper
.
getUseInfoByEquipCode
(
sequenceCodes
);
List
<
String
>
usedSeqCodeList
=
registrationInfoMapper
.
getUsedCountBySeqCodes
(
sequenceCodes
);
if
(
useInfos
.
size
()
<
sequenceCodes
.
size
())
{
if
(
usedSeqCodeList
.
size
()
<
sequenceCodes
.
size
())
{
List
<
String
>
equipCodes
=
useInfos
.
stream
().
map
(
e
->
e
.
getEquCode
()).
collect
(
Collectors
.
toList
());
return
sequenceCodes
.
stream
().
filter
(
c
->
!
usedSeqCodeList
.
contains
(
c
)).
collect
(
Collectors
.
toList
());
return
sequenceCodes
.
stream
().
filter
(
c
->
!
equipCodes
.
contains
(
c
)).
collect
(
Collectors
.
toList
());
}
}
return
null
;
return
null
;
}
}
...
...
amos-boot-data/amos-boot-data-openapi/src/main/java/com/yeejoin/amos/api/openapi/face/service/TmCylinderFillingService.java
View file @
62e75e42
...
@@ -10,7 +10,6 @@ import com.yeejoin.amos.api.openapi.service.MyBaseServiceImpl;
...
@@ -10,7 +10,6 @@ import com.yeejoin.amos.api.openapi.service.MyBaseServiceImpl;
import
com.yeejoin.amos.api.openapi.util.MultiFieldKey
;
import
com.yeejoin.amos.api.openapi.util.MultiFieldKey
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
java.util.Date
;
import
java.util.Date
;
...
@@ -29,10 +28,16 @@ import java.util.List;
...
@@ -29,10 +28,16 @@ import java.util.List;
@Component
@Component
public
class
TmCylinderFillingService
extends
MyBaseServiceImpl
<
TmCylinderFillingModel
,
TmCylinderFilling
,
TmCylinderFillingMapper
>
{
public
class
TmCylinderFillingService
extends
MyBaseServiceImpl
<
TmCylinderFillingModel
,
TmCylinderFilling
,
TmCylinderFillingMapper
>
{
private
final
SyncCylinderDataService
syncCylinderDataService
;
@Autowired
@Autowired
private
SyncCylinderDataService
syncCylinderDataService
;
private
TmCylinderFillingService
self
;
public
TmCylinderFillingService
(
SyncCylinderDataService
syncCylinderDataService
)
{
this
.
syncCylinderDataService
=
syncCylinderDataService
;
}
@DSTransactional
@DSTransactional
public
void
createCylinderFillingBefore
(
List
<
TmCylinderFillingModel
>
model
)
{
public
void
createCylinderFillingBefore
(
List
<
TmCylinderFillingModel
>
model
)
{
Date
now
=
new
Date
();
Date
now
=
new
Date
();
String
appId
=
getAppId
();
String
appId
=
getAppId
();
...
@@ -45,7 +50,7 @@ public class TmCylinderFillingService extends MyBaseServiceImpl<TmCylinderFillin
...
@@ -45,7 +50,7 @@ public class TmCylinderFillingService extends MyBaseServiceImpl<TmCylinderFillin
// 同步至气瓶业务库
// 同步至气瓶业务库
syncCylinderFillingBefore
(
model
);
syncCylinderFillingBefore
(
model
);
this
.
saveOrUpdateBatchByUniqueFields
(
self
.
saveOrUpdateBatchByUniqueFields
(
tmCylinderFillingList
,
tmCylinderFillingList
,
tmCylinderFilling
->
new
LambdaQueryWrapper
<
TmCylinderFilling
>()
tmCylinderFilling
->
new
LambdaQueryWrapper
<
TmCylinderFilling
>()
.
eq
(
TmCylinderFilling:
:
getAppId
,
tmCylinderFilling
.
getAppId
())
.
eq
(
TmCylinderFilling:
:
getAppId
,
tmCylinderFilling
.
getAppId
())
...
...
amos-boot-system-tzs/amos-boot-module-cylinder/amos-boot-module-cylinder-api/src/main/java/com/yeejoin/amos/boot/module/cylinder/api/dto/CylinderFillingMessage.java
View file @
62e75e42
...
@@ -9,4 +9,5 @@ public class CylinderFillingMessage {
...
@@ -9,4 +9,5 @@ public class CylinderFillingMessage {
private
Integer
cylinderNumber
;
private
Integer
cylinderNumber
;
private
String
message
;
private
String
message
;
private
String
appId
;
private
String
appId
;
private
String
orgCode
;
}
}
amos-boot-system-tzs/amos-boot-module-ymt/amos-boot-module-ymt-biz/src/main/java/com/yeejoin/amos/boot/module/ymt/biz/service/impl/EquipmentCategoryServiceImpl.java
View file @
62e75e42
...
@@ -26,7 +26,6 @@ import com.yeejoin.amos.boot.module.ymt.api.service.IGenerateCodeService;
...
@@ -26,7 +26,6 @@ import com.yeejoin.amos.boot.module.ymt.api.service.IGenerateCodeService;
import
com.yeejoin.amos.boot.module.ymt.api.vo.EquipExportVo
;
import
com.yeejoin.amos.boot.module.ymt.api.vo.EquipExportVo
;
import
com.yeejoin.amos.boot.module.ymt.biz.dao.ESElavtorRepository
;
import
com.yeejoin.amos.boot.module.ymt.biz.dao.ESElavtorRepository
;
import
com.yeejoin.amos.boot.module.ymt.biz.utils.JsonUtils
;
import
com.yeejoin.amos.boot.module.ymt.biz.utils.JsonUtils
;
import
com.yeejoin.amos.boot.module.ymt.biz.utils.StringUtils
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.feign.IdxFeignService
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.feign.IdxFeignService
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.feign.PrivilegeFeginService
;
import
com.yeejoin.amos.boot.module.ymt.flc.api.feign.PrivilegeFeginService
;
import
com.yeejoin.amos.component.feign.model.FeignClientResult
;
import
com.yeejoin.amos.component.feign.model.FeignClientResult
;
...
...
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