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
You need to sign in or sign up before continuing.
Commit
51ce87e0
authored
Jul 16, 2025
by
刘帅
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.物资库存优化
parent
ed8755c0
Changes
5
Hide 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