Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
Z
zlmy-cloud
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
zlmy
zlmy-cloud
Commits
793a26cf
Commit
793a26cf
authored
Jul 17, 2025
by
Rensq
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
租赁库导入功能
parent
050dd83c
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
126 additions
and
3 deletions
+126
-3
AuthInterceptor.java
...n/java/com/testor/common/interceptor/AuthInterceptor.java
+1
-2
DepositoryManageBaseController.java
...odule/hire/controller/DepositoryManageBaseController.java
+5
-0
HireDepositoryDetailVo.java
.../testor/module/hire/entity/vo/HireDepositoryDetailVo.java
+3
-0
DepositoryManageBaseService.java
...stor/module/hire/service/DepositoryManageBaseService.java
+1
-0
DepositoryManageBaseServiceImpl.java
...le/hire/service/impl/DepositoryManageBaseServiceImpl.java
+109
-1
NewSysOrgService.java
.../java/com/testor/module/sys/service/NewSysOrgService.java
+2
-0
NewSysOrgServiceImpl.java
.../testor/module/sys/service/impl/NewSysOrgServiceImpl.java
+5
-0
No files found.
zlmy-modules/zlmy-boot/src/main/java/com/testor/common/interceptor/AuthInterceptor.java
View file @
793a26cf
...
...
@@ -35,9 +35,8 @@ public class AuthInterceptor implements HandlerInterceptor {
public
boolean
preHandle
(
HttpServletRequest
request
,
HttpServletResponse
response
,
Object
obj
)
{
HttpServletResponse
httpResponse
=
response
;
String
contentPath
=
request
.
getContextPath
();
String
token
=
RequestUtil
.
getToken
(
request
);
log
.
info
(
"接口
:"
+
request
.
getRequestURI
()
+
"携带的token为:
"
+
token
);
log
.
info
(
"接口
路径:"
+
request
.
getRequestURI
()
+
";token=
"
+
token
);
if
(
StringHelper
.
isNotBlank
(
token
))
{
try
{
JwtInfos
jwtInfos
=
JwtHelper
.
parseJwtAuth0
(
token
,
"Token Issuer"
);
...
...
zlmy-modules/zlmy-boot/src/main/java/com/testor/module/hire/controller/DepositoryManageBaseController.java
View file @
793a26cf
...
...
@@ -94,6 +94,11 @@ public class DepositoryManageBaseController {
}
@ApiOperation
(
value
=
"数据导入"
,
notes
=
"表头数据 大区、经营部、主库(归属单位)、实际存储库点、库点类型、省份、库点地址"
)
@PostMapping
(
value
=
"/dataImport"
)
public
BaseResponse
<
String
>
dataImport
(
@RequestParam
(
"file"
)
MultipartFile
file
)
{
return
depositoryManageBaseService
.
dataImport
(
file
);
}
}
...
...
zlmy-modules/zlmy-boot/src/main/java/com/testor/module/hire/entity/vo/HireDepositoryDetailVo.java
View file @
793a26cf
...
...
@@ -22,6 +22,9 @@ import java.util.Date;
@Accessors
(
chain
=
true
)
@ApiModel
(
value
=
"HireDepositoryListVo对象"
,
description
=
"租赁库详情对象"
)
public
class
HireDepositoryDetailVo
{
/**
* 租赁库id
*/
@ApiModelProperty
(
value
=
"ID"
)
private
String
id
;
...
...
zlmy-modules/zlmy-boot/src/main/java/com/testor/module/hire/service/DepositoryManageBaseService.java
View file @
793a26cf
...
...
@@ -61,4 +61,5 @@ public interface DepositoryManageBaseService extends IService<DepositoryManageBa
*/
BaseResponse
<
String
>
historicalDataImport
(
MultipartFile
file
)
throws
IOException
;
BaseResponse
<
String
>
dataImport
(
MultipartFile
file
);
}
zlmy-modules/zlmy-boot/src/main/java/com/testor/module/hire/service/impl/DepositoryManageBaseServiceImpl.java
View file @
793a26cf
...
...
@@ -18,7 +18,10 @@ import com.testor.biz.file.model.dto.FileDTO;
import
com.testor.biz.sys.org.model.domain.SysOrg
;
import
com.testor.common.constant.StatusEnum
;
import
com.testor.common.core.utils.StringUtils
;
import
com.testor.common.core.utils.uuid.IdUtils
;
import
com.testor.common.util.DateUtil
;
import
com.testor.common.util.ExcelUtils
;
import
com.testor.module.duty.util.PoiExcelUtils
;
import
com.testor.module.hire.dao.DepositoryManageBaseMapper
;
import
com.testor.module.hire.entity.*
;
import
com.testor.module.hire.entity.vo.*
;
...
...
@@ -37,6 +40,8 @@ import io.jsonwebtoken.lang.Collections;
import
lombok.SneakyThrows
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.poi.ss.usermodel.Sheet
;
import
org.apache.poi.ss.usermodel.Workbook
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
...
...
@@ -46,6 +51,7 @@ import org.springframework.web.multipart.MultipartFile;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.OutputStream
;
import
java.io.UnsupportedEncodingException
;
import
java.math.BigDecimal
;
...
...
@@ -345,7 +351,7 @@ public class DepositoryManageBaseServiceImpl extends ServiceImpl<DepositoryManag
sysOrg
.
setStatus
(
"0"
);
sysOrg
.
setIsRent
(
"1"
);
sysOrg
.
setTreeLevel
(
newTreeLevel
);
sysOrg
.
setTreeSort
(
new
BigDecimal
(
"
1
"
));
sysOrg
.
setTreeSort
(
new
BigDecimal
(
"
99
"
));
sysOrg
.
setProvince
(
depositoryInfo
.
getDepositoryProvinceName
());
sysOrg
.
setCity
(
depositoryInfo
.
getDepositoryCityName
());
sysOrg
.
setCounty
(
depositoryInfo
.
getDepositoryCountyName
());
...
...
@@ -541,6 +547,108 @@ public class DepositoryManageBaseServiceImpl extends ServiceImpl<DepositoryManag
return
baseResponse
;
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
BaseResponse
<
String
>
dataImport
(
MultipartFile
file
)
{
BaseResponse
<
String
>
baseResponse
=
new
BaseResponse
<>();
List
<
HireDepositoryDetailVo
>
hireDepositoryDetailVos
=
new
ArrayList
<>();
try
{
InputStream
inputStream
=
file
.
getInputStream
();
Workbook
sheets
=
PoiExcelUtils
.
readFile
(
inputStream
,
Objects
.
requireNonNull
(
file
.
getOriginalFilename
()));
Sheet
sheet
=
sheets
.
getSheetAt
(
0
);
//获取文件内数据
List
<
Map
<
Integer
,
Object
>>
dataList
=
PoiExcelUtils
.
getBody
(
sheet
,
7
,
3
);
if
(
dataList
==
null
||
dataList
.
isEmpty
())
{
baseResponse
.
setCode
(
BaseStatusEnum
.
UN_DATA
.
code
());
baseResponse
.
setMsg
(
"请填写数据"
);
return
baseResponse
;
}
StringBuffer
errorMsg
=
new
StringBuffer
();
int
rowIndex
=
3
;
for
(
Map
<
Integer
,
Object
>
map
:
dataList
)
{
rowIndex
++;
//大区名称
String
regionName
=
map
.
get
(
0
).
toString
();
//经营部名称
String
businessDeptName
=
map
.
get
(
1
).
toString
();
//租赁库
String
leaseOfGrainDepotsName
=
map
.
get
(
3
).
toString
();
NewSysOrg
businessDeptData
=
null
;
//大区
List
<
NewSysOrg
>
regionOrgList
=
newSysOrgService
.
getOrgByOrgName
(
regionName
);
boolean
shouldBreak
=
false
;
for
(
NewSysOrg
regionOrg
:
regionOrgList
)
{
if
(
shouldBreak
)
{
break
;
}
String
regionOrgId
=
regionOrg
.
getOrgId
();
//经营部
List
<
NewSysOrg
>
businessDeptList
=
newSysOrgService
.
getOrgByOrgName
(
businessDeptName
);
for
(
NewSysOrg
businessDept
:
businessDeptList
)
{
if
(
businessDept
!=
null
&&
businessDept
.
getParentId
().
equals
(
regionOrgId
))
{
businessDeptData
=
businessDept
;
shouldBreak
=
true
;
break
;
}
}
}
if
(
businessDeptData
==
null
)
{
errorMsg
.
append
(
"第"
+
rowIndex
+
"行,经营部名称"
+
businessDeptName
+
"不存在;\n"
);
continue
;
}
HireDepositoryDetailVo
vo
=
new
HireDepositoryDetailVo
();
String
orgName
=
"(租赁库)"
+
leaseOfGrainDepotsName
;
NewSysOrg
newSysOrg
=
newSysOrgService
.
lambdaQuery
()
.
eq
(
NewSysOrg:
:
getOrgName
,
orgName
)
.
eq
(
SysOrg:
:
getIsDept
,
"0"
)
.
eq
(
NewSysOrg:
:
getStatus
,
"0"
)
.
last
(
"limit 1"
)
.
one
();
if
(
newSysOrg
==
null
)
{
vo
.
setId
(
IdUtils
.
randomUUID
());
}
else
{
errorMsg
.
append
(
"第"
+
rowIndex
+
"行,租赁库:"
+
leaseOfGrainDepotsName
+
"已存在;\n"
);
continue
;
}
DepositoryManageBase
basInfo
=
new
DepositoryManageBase
();
basInfo
.
setLessorFullName
(
leaseOfGrainDepotsName
);
basInfo
.
setLessorShortName
(
leaseOfGrainDepotsName
);
basInfo
.
setLessorOrgId
(
businessDeptData
.
getOrgId
());
basInfo
.
setLessorOrgName
(
businessDeptData
.
getOrgName
());
vo
.
setBaseInfo
(
basInfo
);
DepositoryInfo
depositoryInfo
=
new
DepositoryInfo
();
depositoryInfo
.
setDepositoryProvinceName
(
map
.
get
(
5
).
toString
());
depositoryInfo
.
setDepositoryAddress
(
map
.
get
(
6
).
toString
());
depositoryInfo
.
setDepositoryAddress
(
map
.
get
(
6
).
toString
());
vo
.
setDepositoryInfo
(
depositoryInfo
);
DepositoryAccessInfo
accessInfo
=
new
DepositoryAccessInfo
();
vo
.
setAccessInfo
(
accessInfo
);
DepositoryFileInfo
depositoryFileInfo
=
new
DepositoryFileInfo
();
vo
.
setFileInfo
(
depositoryFileInfo
);
hireDepositoryDetailVos
.
add
(
vo
);
}
if
(
errorMsg
.
length
()
>
0
)
{
baseResponse
.
setCode
(
BaseStatusEnum
.
UNKNOWN
.
code
());
baseResponse
.
setMsg
(
errorMsg
.
toString
());
return
baseResponse
;
}
hireDepositoryDetailVos
.
forEach
(
this
::
saveHireDepositoryInfo
);
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
e
);
}
return
baseResponse
;
}
private
HireDepositoryDetailVo
convertImportToVo
(
HistoricalDepositoryImport
depositoryImport
)
{
Date
date
=
DateUtil
.
convertStrToDate
(
depositoryImport
.
getCreateDate
(),
DatePattern
.
NORM_DATETIME_PATTERN
);
...
...
zlmy-modules/zlmy-boot/src/main/java/com/testor/module/sys/service/NewSysOrgService.java
View file @
793a26cf
...
...
@@ -99,4 +99,6 @@ public interface NewSysOrgService extends IService<NewSysOrg> {
* @return 0、不是北良公司 1、部 2、公司
*/
Integer
getOrgTypeByOrgId
(
String
orgId
);
List
<
NewSysOrg
>
getOrgByOrgName
(
String
orgName
);
}
zlmy-modules/zlmy-boot/src/main/java/com/testor/module/sys/service/impl/NewSysOrgServiceImpl.java
View file @
793a26cf
...
...
@@ -239,4 +239,9 @@ public class NewSysOrgServiceImpl extends SuperServiceImpl<NewSysOrgDao, NewSysO
}
return
0
;
}
@Override
public
List
<
NewSysOrg
>
getOrgByOrgName
(
String
orgName
)
{
return
list
(
new
QueryWrapper
<
NewSysOrg
>().
eq
(
"org_name"
,
orgName
).
eq
(
"status"
,
"0"
));
}
}
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