Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
maintain_service
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
刘帅
maintain_service
Commits
51ce87e0
Commit
51ce87e0
authored
Jul 16, 2025
by
刘帅
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.物资库存优化
parent
ed8755c0
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
84 additions
and
36 deletions
+84
-36
ErpMaterialController.java
...m/maintain/business/controller/ErpMaterialController.java
+19
-21
ErpMaterialMapper.java
.../java/com/maintain/business/mapper/ErpMaterialMapper.java
+14
-0
IErpMaterialService.java
...va/com/maintain/business/service/IErpMaterialService.java
+5
-0
ErpMaterialServiceImpl.java
...aintain/business/service/impl/ErpMaterialServiceImpl.java
+31
-12
ErpMaterialMapper.xml
...-business/src/main/resources/mapper/ErpMaterialMapper.xml
+15
-3
No files found.
maintain-business/src/main/java/com/maintain/business/controller/ErpMaterialController.java
View file @
51ce87e0
package
com
.
maintain
.
business
.
controller
;
package
com
.
maintain
.
business
.
controller
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Arrays
;
import
com.maintain.business.domain.bo.ErpCarBo
;
import
com.maintain.business.domain.vo.ErpCarVo
;
import
com.maintain.business.listener.ErpCarImportListener
;
import
com.maintain.business.listener.ErpMaterialImportListener
;
import
com.maintain.common.excel.ExcelResult
;
import
lombok.RequiredArgsConstructor
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.constraints.*
;
import
cn.dev33.satoken.annotation.SaCheckPermission
;
import
cn.dev33.satoken.annotation.SaCheckPermission
;
import
org.springframework.http.MediaType
;
import
com.maintain.business.domain.bo.ErpMaterialBo
;
import
org.springframework.web.bind.annotation.*
;
import
com.maintain.business.domain.vo.ErpMaterialVo
;
import
org.springframework.validation.annotation.Validated
;
import
com.maintain.business.listener.ErpMaterialImportListener
;
import
com.maintain.
common.annotation.RepeatSubmit
;
import
com.maintain.
business.service.IErpMaterialService
;
import
com.maintain.common.annotation.Log
;
import
com.maintain.common.annotation.Log
;
import
com.maintain.common.annotation.RepeatSubmit
;
import
com.maintain.common.core.controller.BaseController
;
import
com.maintain.common.core.controller.BaseController
;
import
com.maintain.common.core.domain.PageQuery
;
import
com.maintain.common.core.domain.PageQuery
;
import
com.maintain.common.core.domain.R
;
import
com.maintain.common.core.domain.R
;
import
com.maintain.common.core.page.TableDataInfo
;
import
com.maintain.common.core.validate.AddGroup
;
import
com.maintain.common.core.validate.AddGroup
;
import
com.maintain.common.core.validate.EditGroup
;
import
com.maintain.common.core.validate.EditGroup
;
import
com.maintain.common.enums.BusinessType
;
import
com.maintain.common.enums.BusinessType
;
import
com.maintain.common.excel.ExcelResult
;
import
com.maintain.common.utils.poi.ExcelUtil
;
import
com.maintain.common.utils.poi.ExcelUtil
;
import
com.maintain.business.domain.vo.ErpMaterialVo
;
import
lombok.RequiredArgsConstructor
;
import
com.maintain.business.domain.bo.ErpMaterialBo
;
import
org.springframework.http.MediaType
;
import
com.maintain.business.service.IErpMaterialService
;
import
org.springframework.validation.annotation.Validated
;
import
com.maintain.common.core.page.TableDataInfo
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotNull
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
/**
/**
* 物资
* 物资
*
*
...
@@ -51,7 +49,7 @@ public class ErpMaterialController extends BaseController {
...
@@ -51,7 +49,7 @@ public class ErpMaterialController extends BaseController {
@SaCheckPermission
(
"business:material:list"
)
@SaCheckPermission
(
"business:material:list"
)
@GetMapping
(
"/list"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
<
ErpMaterialVo
>
list
(
ErpMaterialBo
bo
,
PageQuery
pageQuery
)
{
public
TableDataInfo
<
ErpMaterialVo
>
list
(
ErpMaterialBo
bo
,
PageQuery
pageQuery
)
{
return
iErpMaterialService
.
q
ueryPageList
(
bo
,
pageQuery
);
return
iErpMaterialService
.
customQ
ueryPageList
(
bo
,
pageQuery
);
}
}
/**
/**
...
...
maintain-business/src/main/java/com/maintain/business/mapper/ErpMaterialMapper.java
View file @
51ce87e0
package
com
.
maintain
.
business
.
mapper
;
package
com
.
maintain
.
business
.
mapper
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Constants
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.maintain.business.domain.ErpMaterial
;
import
com.maintain.business.domain.ErpMaterial
;
import
com.maintain.business.domain.ErpMaterialPickingInfo
;
import
com.maintain.business.domain.vo.ErpMaterialPickingInfoVo
;
import
com.maintain.business.domain.vo.ErpMaterialVo
;
import
com.maintain.business.domain.vo.ErpMaterialVo
;
import
com.maintain.common.core.mapper.BaseMapperPlus
;
import
com.maintain.common.core.mapper.BaseMapperPlus
;
import
org.apache.ibatis.annotations.Param
;
/**
/**
* 物资Mapper接口
* 物资Mapper接口
...
@@ -12,4 +18,12 @@ import com.maintain.common.core.mapper.BaseMapperPlus;
...
@@ -12,4 +18,12 @@ import com.maintain.common.core.mapper.BaseMapperPlus;
*/
*/
public
interface
ErpMaterialMapper
extends
BaseMapperPlus
<
ErpMaterialMapper
,
ErpMaterial
,
ErpMaterialVo
>
{
public
interface
ErpMaterialMapper
extends
BaseMapperPlus
<
ErpMaterialMapper
,
ErpMaterial
,
ErpMaterialVo
>
{
/**
* 自定义分页查询
* @param page
* @param queryWrapper
* @return
*/
Page
<
ErpMaterialVo
>
customQueryPageList
(
@Param
(
"page"
)
Page
<
ErpMaterial
>
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
ErpMaterial
>
queryWrapper
);
}
}
maintain-business/src/main/java/com/maintain/business/service/IErpMaterialService.java
View file @
51ce87e0
...
@@ -28,6 +28,11 @@ public interface IErpMaterialService {
...
@@ -28,6 +28,11 @@ public interface IErpMaterialService {
*/
*/
TableDataInfo
<
ErpMaterialVo
>
queryPageList
(
ErpMaterialBo
bo
,
PageQuery
pageQuery
);
TableDataInfo
<
ErpMaterialVo
>
queryPageList
(
ErpMaterialBo
bo
,
PageQuery
pageQuery
);
/**
* 查询物资列表(自定义查询)
*/
TableDataInfo
<
ErpMaterialVo
>
customQueryPageList
(
ErpMaterialBo
bo
,
PageQuery
pageQuery
);
/**
/**
* 查询物资列表
* 查询物资列表
*/
*/
...
...
maintain-business/src/main/java/com/maintain/business/service/impl/ErpMaterialServiceImpl.java
View file @
51ce87e0
package
com
.
maintain
.
business
.
service
.
impl
;
package
com
.
maintain
.
business
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.maintain.business.domain.ErpMaterialCheck
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.maintain.business.domain.ErpMaterial
;
import
com.maintain.business.domain.bo.ErpMaterialBo
;
import
com.maintain.business.domain.vo.*
;
import
com.maintain.business.domain.vo.*
;
import
com.maintain.business.mapper.*
;
import
com.maintain.business.mapper.*
;
import
com.maintain.business.service.IErpMaterialService
;
import
com.maintain.common.core.domain.PageQuery
;
import
com.maintain.common.core.page.TableDataInfo
;
import
com.maintain.common.enums.IsDeleteStatus
;
import
com.maintain.common.enums.IsDeleteStatus
;
import
com.maintain.common.enums.IsEnableStatus
;
import
com.maintain.common.enums.IsEnableStatus
;
import
com.maintain.common.utils.StringUtils
;
import
com.maintain.common.utils.StringUtils
;
import
com.maintain.common.core.page.TableDataInfo
;
import
com.maintain.common.core.domain.PageQuery
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
com.maintain.business.domain.bo.ErpMaterialBo
;
import
com.maintain.business.domain.ErpMaterial
;
import
com.maintain.business.service.IErpMaterialService
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Collection
;
import
static
net
.
sf
.
jsqlparser
.
parser
.
feature
.
Feature
.
update
;
/**
/**
* 物资Service业务层处理
* 物资Service业务层处理
...
@@ -61,6 +59,15 @@ public class ErpMaterialServiceImpl implements IErpMaterialService {
...
@@ -61,6 +59,15 @@ public class ErpMaterialServiceImpl implements IErpMaterialService {
return
TableDataInfo
.
build
(
result
);
return
TableDataInfo
.
build
(
result
);
}
}
/**
* 查询物资列表(自定义查询)
*/
@Override
public
TableDataInfo
<
ErpMaterialVo
>
customQueryPageList
(
ErpMaterialBo
bo
,
PageQuery
pageQuery
)
{
Page
<
ErpMaterialVo
>
result
=
baseMapper
.
customQueryPageList
(
pageQuery
.
build
(),
this
.
customBuildQueryWrapper
(
bo
));
return
TableDataInfo
.
build
(
result
);
}
/**
/**
* 查询物资列表
* 查询物资列表
*/
*/
...
@@ -70,6 +77,18 @@ public class ErpMaterialServiceImpl implements IErpMaterialService {
...
@@ -70,6 +77,18 @@ public class ErpMaterialServiceImpl implements IErpMaterialService {
return
baseMapper
.
selectVoList
(
lqw
);
return
baseMapper
.
selectVoList
(
lqw
);
}
}
private
QueryWrapper
<
ErpMaterial
>
customBuildQueryWrapper
(
ErpMaterialBo
bo
)
{
QueryWrapper
<
ErpMaterial
>
query
=
Wrappers
.
query
();
query
.
like
(
null
!=
bo
.
getVendorName
(),
"vendor_name"
,
bo
.
getVendorName
())
.
like
(
null
!=
bo
.
getMaterialName
(),
"material_name"
,
bo
.
getMaterialName
())
.
like
(
null
!=
bo
.
getMaterialCode
(),
"material_code"
,
bo
.
getMaterialCode
())
.
like
(
null
!=
bo
.
getMaterialSpecifications
(),
"material_specifications"
,
bo
.
getMaterialSpecifications
())
.
eq
(
null
!=
bo
.
getIsEnable
(),
"is_enable"
,
bo
.
getIsEnable
())
.
eq
(
null
!=
bo
.
getIsCheck
(),
"is_check"
,
bo
.
getIsCheck
())
.
eq
(
null
!=
bo
.
getIsUniversal
(),
"is_universal"
,
bo
.
getIsUniversal
());
return
query
;
}
private
LambdaQueryWrapper
<
ErpMaterial
>
buildQueryWrapper
(
ErpMaterialBo
bo
)
{
private
LambdaQueryWrapper
<
ErpMaterial
>
buildQueryWrapper
(
ErpMaterialBo
bo
)
{
Map
<
String
,
Object
>
params
=
bo
.
getParams
();
Map
<
String
,
Object
>
params
=
bo
.
getParams
();
LambdaQueryWrapper
<
ErpMaterial
>
lqw
=
Wrappers
.
lambdaQuery
();
LambdaQueryWrapper
<
ErpMaterial
>
lqw
=
Wrappers
.
lambdaQuery
();
...
...
maintain-business/src/main/resources/mapper/ErpMaterialMapper.xml
View file @
51ce87e0
...
@@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.maintain.business.mapper.ErpMaterialMapper"
>
<mapper
namespace=
"com.maintain.business.mapper.ErpMaterialMapper"
>
<resultMap
type=
"com.maintain.business.domain.
ErpMaterial
"
id=
"ErpMaterialResult"
>
<resultMap
type=
"com.maintain.business.domain.
vo.ErpMaterialVo
"
id=
"ErpMaterialResult"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"id"
column=
"id"
/>
<result
property=
"materialTypeId"
column=
"material_type_id"
/>
<result
property=
"materialTypeId"
column=
"material_type_id"
/>
<result
property=
"materialTypeName"
column=
"material_type_name"
/>
<result
property=
"materialTypeName"
column=
"material_type_name"
/>
...
@@ -24,9 +24,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
...
@@ -24,9 +24,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"isUniversal"
column=
"is_universal"
/>
<result
property=
"isUniversal"
column=
"is_universal"
/>
<result
property=
"createBy"
column=
"create_by"
/>
<result
property=
"createBy"
column=
"create_by"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"updateBy"
column=
"update_by"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
</resultMap>
</resultMap>
<sql
id=
"customQuerySql"
>
SELECT DISTINCT m.*
FROM erp_material m
LEFT JOIN erp_material_picking_info p ON m.id = p.material_id
LEFT JOIN erp_material_putaway_info pu ON m.id = pu.material_id
LEFT JOIN erp_material_returns_info r ON m.id = r.material_id
WHERE p.material_id IS NOT NULL
OR pu.material_id IS NOT NULL
OR r.material_id IS NOT NULL
</sql>
<select
id=
"customQueryPageList"
resultType=
"com.maintain.business.domain.vo.ErpMaterialVo"
>
<include
refid=
"customQuerySql"
/>
${ew.getCustomSqlSegment}
</select>
</mapper>
</mapper>
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