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
44b5c24f
Commit
44b5c24f
authored
Jul 10, 2024
by
刘林
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix(jg):气瓶批量导入功能修改
parent
f4f2edb3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
43 additions
and
44 deletions
+43
-44
IdxBizJqEquipmentRegisterController.java
...g/biz/controller/IdxBizJqEquipmentRegisterController.java
+39
-5
IIdxBizJgRegisterInfoService.java
...t/module/jg/biz/service/IIdxBizJgRegisterInfoService.java
+1
-1
IdxBizJgRegisterInfoServiceImpl.java
.../jg/biz/service/impl/IdxBizJgRegisterInfoServiceImpl.java
+3
-38
No files found.
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/controller/IdxBizJqEquipmentRegisterController.java
View file @
44b5c24f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
controller
;
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
controller
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.context.AnalysisContext
;
import
com.alibaba.excel.event.AnalysisEventListener
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.module.jg.api.dto.EquipInfoCylinderExcelDto
;
import
com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgRegisterInfoService
;
import
com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgRegisterInfoService
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.core.io.Resource
;
import
org.springframework.core.io.Resource
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.InputStream
;
import
java.io.OutputStream
;
import
java.io.OutputStream
;
import
java.net.URLEncoder
;
import
java.net.URLEncoder
;
import
java.util.List
;
import
java.util.*
;
import
java.util.Map
;
/**
/**
* 设备注册
* 设备注册
...
@@ -151,10 +156,39 @@ public class IdxBizJqEquipmentRegisterController extends BaseController {
...
@@ -151,10 +156,39 @@ public class IdxBizJqEquipmentRegisterController extends BaseController {
@PostMapping
(
"/importPressureVesselData"
)
@PostMapping
(
"/importPressureVesselData"
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
value
=
"压力容器设备批量导入"
)
@ApiOperation
(
value
=
"压力容器设备批量导入"
)
public
ResponseModel
<
String
>
importPressureVesselData
(
@RequestBody
Map
<
String
,
Object
>
paramMap
)
{
public
ResponseModel
<
?>
importPressureVesselData
(
@RequestBody
Map
<
String
,
Object
>
paramMap
,
@RequestPart
MultipartFile
multipartFile
)
{
return
ResponseHelper
.
buildResponse
(
idxBizJgRegisterInfoService
.
importPressureVesselData
(
paramMap
));
return
ResponseHelper
.
buildResponse
(
idxBizJgRegisterInfoService
.
importPressureVesselData
(
paramMap
,
multipartFile
));
}
}
/**
*
* 气瓶批量导入
* **/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/importData"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"气瓶批量导入"
,
notes
=
"气瓶批量导入"
)
public
List
<
EquipInfoCylinderExcelDto
>
ImportData
(
@RequestPart
MultipartFile
multipartFile
)
throws
Exception
{
List
<
EquipInfoCylinderExcelDto
>
aircraftList
=
new
ArrayList
<>();
try
{
EasyExcel
.
read
(
multipartFile
.
getInputStream
(),
EquipInfoCylinderExcelDto
.
class
,
new
AnalysisEventListener
<
EquipInfoCylinderExcelDto
>()
{
// 每读取一行就调用该方法
@Override
public
void
invoke
(
EquipInfoCylinderExcelDto
data
,
AnalysisContext
context
)
{
EquipInfoCylinderExcelDto
fireExperts
=
new
EquipInfoCylinderExcelDto
();
BeanUtils
.
copyProperties
(
data
,
fireExperts
);
aircraftList
.
add
(
fireExperts
);
}
// 全部读取完成就调用该方法
@Override
public
void
doAfterAllAnalysed
(
AnalysisContext
context
)
{
System
.
out
.
println
(
"读取完成"
);
}
}).
headRowNumber
(
4
).
sheet
().
doRead
();
return
aircraftList
;
}
catch
(
Exception
e
)
{
throw
new
Exception
(
"系统异常"
);
}
}
/**
/**
* 压力容器设备模版下载
* 压力容器设备模版下载
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/service/IIdxBizJgRegisterInfoService.java
View file @
44b5c24f
...
@@ -36,5 +36,5 @@ public interface IIdxBizJgRegisterInfoService {
...
@@ -36,5 +36,5 @@ public interface IIdxBizJgRegisterInfoService {
Page
<
JSONObject
>
queryEquipCanUsedByVesselPage
(
JSONObject
jsonObject
);
Page
<
JSONObject
>
queryEquipCanUsedByVesselPage
(
JSONObject
jsonObject
);
String
importPressureVesselData
(
Map
<
String
,
Object
>
paramMap
);
Object
importPressureVesselData
(
Map
<
String
,
Object
>
paramMap
,
MultipartFile
multipartFile
);
}
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/service/impl/IdxBizJgRegisterInfoServiceImpl.java
View file @
44b5c24f
...
@@ -38,8 +38,6 @@ import com.yeejoin.amos.feign.privilege.Privilege;
...
@@ -38,8 +38,6 @@ import com.yeejoin.amos.feign.privilege.Privilege;
import
com.yeejoin.amos.feign.privilege.model.CompanyModel
;
import
com.yeejoin.amos.feign.privilege.model.CompanyModel
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
io.minio.GetObjectArgs
;
import
io.minio.MinioClient
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.lucene.queryparser.classic.QueryParser
;
import
org.apache.lucene.queryparser.classic.QueryParser
;
...
@@ -57,6 +55,7 @@ import org.springframework.beans.factory.annotation.Value;
...
@@ -57,6 +55,7 @@ import org.springframework.beans.factory.annotation.Value;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
...
@@ -64,14 +63,11 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
...
@@ -64,14 +63,11 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
import
org.typroject.tyboot.core.restful.exception.instance.BadRequest
;
import
org.typroject.tyboot.core.restful.exception.instance.BadRequest
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.lang.reflect.Field
;
import
java.lang.reflect.Field
;
import
java.sql.Timestamp
;
import
java.sql.Timestamp
;
import
java.util.*
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
static
com
.
alibaba
.
fastjson
.
JSON
.
toJSONString
;
import
static
com
.
alibaba
.
fastjson
.
JSON
.
toJSONString
;
...
@@ -196,15 +192,6 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
...
@@ -196,15 +192,6 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
@Value
(
"${add.equip.dict.code.suffix:CATEGORY_LIST_ADD}"
)
@Value
(
"${add.equip.dict.code.suffix:CATEGORY_LIST_ADD}"
)
private
String
equipAddDictCodeSuffix
;
private
String
equipAddDictCodeSuffix
;
@Value
(
"${minio.endpoint}"
)
private
String
minioEndpoint
;
@Value
(
"${minio.accessKey}"
)
private
String
accessKey
;
@Value
(
"${minio.secretKey}"
)
private
String
secretKey
;
@Autowired
@Autowired
private
IdxBizJgDesignInfoServiceImpl
idxBizJgDesignInfoService
;
private
IdxBizJgDesignInfoServiceImpl
idxBizJgDesignInfoService
;
@Autowired
@Autowired
...
@@ -2006,37 +1993,15 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
...
@@ -2006,37 +1993,15 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
}
}
@Override
@Override
public
String
importPressureVesselData
(
Map
<
String
,
Object
>
paramMap
)
{
public
String
importPressureVesselData
(
Map
<
String
,
Object
>
paramMap
,
MultipartFile
multipartFile
)
{
try
{
try
{
PressureVesselListener
pressureVesselListener
=
new
PressureVesselListener
();
PressureVesselListener
pressureVesselListener
=
new
PressureVesselListener
();
LinkedHashMap
equipmentInfoForm
=
(
LinkedHashMap
)
checkAndCast
(
paramMap
.
get
(
EQUIP_INFO_FORM_ID
));
LinkedHashMap
equipmentInfoForm
=
(
LinkedHashMap
)
checkAndCast
(
paramMap
.
get
(
EQUIP_INFO_FORM_ID
));
injectDependencies
(
pressureVesselListener
,
equipmentInfoForm
);
injectDependencies
(
pressureVesselListener
,
equipmentInfoForm
);
EasyExcel
.
read
(
multipartFile
.
getInputStream
(),
EquipInfoCylinderExcelDto
.
class
,
pressureVesselListener
)
// 初始化MinioClient对象
MinioClient
minioClient
=
MinioClient
.
builder
()
.
endpoint
(
minioEndpoint
)
.
credentials
(
accessKey
,
secretKey
)
.
build
();
ArrayList
<?>
file
=
(
ArrayList
<?>)
equipmentInfoForm
.
get
(
"file"
);
HashMap
<?,
?>
fileMap
=
(
HashMap
<?,
?>)
file
.
get
(
0
);
String
url
=
String
.
valueOf
(
fileMap
.
get
(
"url"
)).
replaceFirst
(
"/"
,
""
);
// /upload/tzs/amos_studio/9137475/xxx.xlsx
// 中的upload为bucket,tzs/amos_studio/9137475/xxx.xlsx为objectName
int
index
=
url
.
indexOf
(
"/"
);
String
bucket
=
url
.
substring
(
0
,
index
);
String
objectName
=
url
.
substring
(
index
+
1
);
// 入参
GetObjectArgs
args
=
GetObjectArgs
.
builder
().
bucket
(
bucket
).
object
(
objectName
).
build
();
// 获取文件对象的InputStream
InputStream
inputStream
=
minioClient
.
getObject
(
args
);
EasyExcel
.
read
(
inputStream
,
EquipInfoCylinderExcelDto
.
class
,
pressureVesselListener
)
.
headRowNumber
(
4
)
.
headRowNumber
(
4
)
.
sheet
()
.
sheet
()
.
doRead
();
.
doRead
();
inputStream
.
close
();
return
pressureVesselListener
.
getResult
();
return
pressureVesselListener
.
getResult
();
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
String
err
=
(
e
.
getCause
()
instanceof
BadRequest
)
?
"模版数据填写有误:"
+
e
.
getCause
().
getMessage
()
:
"导入时出现异常:请联系管理员!"
;
String
err
=
(
e
.
getCause
()
instanceof
BadRequest
)
?
"模版数据填写有误:"
+
e
.
getCause
().
getMessage
()
:
"导入时出现异常:请联系管理员!"
;
...
...
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