Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
T
topsun-bpm
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
鲁鑫
topsun-bpm
Commits
10efd589
Commit
10efd589
authored
Dec 20, 2023
by
鲁鑫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
导入数据字典明细
parent
23914e8a
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
165 additions
and
0 deletions
+165
-0
DictionaryImportApplication.java
...e/dictionary/application/DictionaryImportApplication.java
+10
-0
DictionaryImportApplicationImpl.java
...ary/application/impl/DictionaryImportApplicationImpl.java
+73
-0
DictionaryController.java
...psun/base/dictionary/controller/DictionaryController.java
+9
-0
DictionaryImportData.java
...u/topsun/base/dictionary/domain/DictionaryImportData.java
+39
-0
dictionaryImport.xml
...rc/main/resources/config/topsun/base/dictionaryImport.xml
+34
-0
No files found.
topsun/src/main/java/com/huigou/topsun/base/dictionary/application/DictionaryImportApplication.java
0 → 100644
View file @
10efd589
package
com
.
huigou
.
topsun
.
base
.
dictionary
.
application
;
/**
* @Auther: xin.lu
* @Date: 2023/12/20/10:30
* @Description:
*/
public
interface
DictionaryImportApplication
{
static
String
QUERY_XML_FILE_PATH
=
"config/topsun/base/dictionaryImport.xml"
;
}
topsun/src/main/java/com/huigou/topsun/base/dictionary/application/impl/DictionaryImportApplicationImpl.java
0 → 100644
View file @
10efd589
package
com
.
huigou
.
topsun
.
base
.
dictionary
.
application
.
impl
;
import
cn.hutool.core.util.NumberUtil
;
import
com.huigou.data.jdbc.util.BatchSqlUpdateDetail
;
import
com.huigou.data.query.model.QueryDescriptor
;
import
com.huigou.topsun.base.dictionary.application.DictionaryImportApplication
;
import
com.huigou.topsun.base.dictionary.domain.DictionaryImportData
;
import
com.huigou.uasp.bmp.common.application.BaseApplication
;
import
com.huigou.uasp.bmp.configuration.application.DictionaryApplication
;
import
com.huigou.uasp.bmp.configuration.domain.model.SysDictionary
;
import
com.huigou.uasp.bmp.configuration.repository.SysDictionaryRepository
;
import
com.huigou.uasp.tool.dataimport.application.ExcelImportInterface
;
import
com.huigou.util.StringUtil
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.Assert
;
import
javax.annotation.Resource
;
import
java.math.BigDecimal
;
import
java.sql.Types
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* @Auther: xin.lu
* @Date: 2023/12/20/10:31
* @Description:
*/
@Service
(
"dictionaryImportApplication"
)
public
class
DictionaryImportApplicationImpl
extends
BaseApplication
implements
DictionaryImportApplication
,
ExcelImportInterface
{
@Resource
private
DictionaryApplication
dictionaryApplication
;
@Override
public
void
executeImport
(
String
batchNumber
)
{
//根据导入的数据判断财务金额和资产金额是否相等,不相等则提示
QueryDescriptor
queryDescriptor
=
this
.
sqlExecutorDao
.
getQuery
(
QUERY_XML_FILE_PATH
,
"queryTempData"
);
String
dictionaryId
=
sqlExecutorDao
.
queryToString
(
queryDescriptor
.
getSql
(),
"currency"
);
String
sql
=
queryDescriptor
.
getSqlByName
(
"queryImpTempDatas"
);
List
<
DictionaryImportData
>
tmpDatas
=
this
.
sqlExecutorDao
.
queryToList
(
sql
,
DictionaryImportData
.
class
,
batchNumber
);
if
(
tmpDatas
==
null
||
tmpDatas
.
size
()
==
0
)
{
return
;
}
// 插入预算记录
BatchSqlUpdateDetail
inserts
=
this
.
getBatchInsertDetail
();
// 修改导入明细表
//String updateImpTempDatas = queryDescriptor.getSqlByName("updateImpTempDatas");
//BatchSqlUpdateDetail updates = BatchSqlUpdateDetail.newInstance(this.sqlExecutorDao.getDataSource(), updateImpTempDatas, null);
for
(
DictionaryImportData
tmp
:
tmpDatas
)
{
tmp
.
setDictionaryId
(
dictionaryId
);
if
(!
tmp
.
isError
())
{
// 执行插入
tmp
.
setId
(
tmp
.
getTmpId
());
tmp
.
setStatus
(
"1"
);
inserts
.
setRows
(
tmp
);
}
// 修改导入信息
//updates.setRows(tmp);
}
inserts
.
flush
();
//updates.flush();
}
private
BatchSqlUpdateDetail
getBatchInsertDetail
()
{
QueryDescriptor
queryDescriptor
=
this
.
sqlExecutorDao
.
getQuery
(
QUERY_XML_FILE_PATH
,
"queryTempData"
);
Map
<
String
,
Integer
>
paramType
=
new
HashMap
<
String
,
Integer
>();
return
BatchSqlUpdateDetail
.
newInstance
(
this
.
sqlExecutorDao
.
getDataSource
(),
queryDescriptor
.
getSqlByName
(
"insertRecord"
),
paramType
);
}
}
topsun/src/main/java/com/huigou/topsun/base/dictionary/controller/DictionaryController.java
0 → 100644
View file @
10efd589
package
com
.
huigou
.
topsun
.
base
.
dictionary
.
controller
;
/**
* @Auther: xin.lu
* @Date: 2023/12/20/10:26
* @Description:
*/
public
class
DictionaryController
{
}
topsun/src/main/java/com/huigou/topsun/base/dictionary/domain/DictionaryImportData.java
0 → 100644
View file @
10efd589
package
com
.
huigou
.
topsun
.
base
.
dictionary
.
domain
;
import
com.huigou.data.domain.model.AbstractEntity
;
import
com.huigou.util.StringUtil
;
import
lombok.Data
;
/**
* @Auther: xin.lu
* @Date: 2023/12/20/10:33
* @Description:
*/
@Data
public
class
DictionaryImportData
extends
AbstractEntity
{
private
String
value
;
private
String
name
;
private
String
sequence
;
private
String
dictionaryId
;
private
String
tmpId
;
private
String
status
;
private
String
message
;
public
boolean
isError
()
{
if
(
StringUtil
.
isBlank
(
status
))
{
return
false
;
}
if
(
status
.
equals
(
"2"
))
{
return
true
;
}
return
false
;
}
}
topsun/src/main/resources/config/topsun/base/dictionaryImport.xml
0 → 100644
View file @
10efd589
<?xml version="1.0" encoding="UTF-8"?>
<query-mappings>
<query
name=
"queryTempData"
label=
""
table=
"tmp_dictionary_import"
>
<sql-query>
select t.id from sa_dictionary t where 1=1 and t.code = ?
</sql-query>
<sql
name=
"queryImpTempDatas"
>
select t.* from tmp_dictionary_import t where t.batch_number=?
</sql>
<sql
name=
"updateImpTempDatas"
>
update tmp_dictionary_import t set t.status =:status,t.message=:message where t.tmp_id=:tmpId
</sql>
<sql
name=
"insertRecord"
>
insert into sa_dictionarydetail
(id,
value,
name,
sequence,
dictionary_id,
status)
values
(:id,
:value,
:name,
:sequence,
:dictionary_id,
1
)
</sql>
</query>
</query-mappings>
\ No newline at end of file
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