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
c16e627b
Commit
c16e627b
authored
Feb 24, 2023
by
tangwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
器材统计
parent
c995d549
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
243 additions
and
33 deletions
+243
-33
CustomMergeStrategy.java
...ejoin/amos/boot/biz/common/excel/CustomMergeStrategy.java
+91
-0
ExcelUtil.java
...ava/com/yeejoin/amos/boot/biz/common/excel/ExcelUtil.java
+53
-0
EquipmentController.java
...m/yeejoin/equipmanage/controller/EquipmentController.java
+16
-0
EquipmentDetailController.java
...oin/equipmanage/controller/EquipmentDetailController.java
+7
-0
FireFightingSystemController.java
.../equipmanage/controller/FireFightingSystemController.java
+15
-29
EquipmentMapper.java
.../java/com/yeejoin/equipmanage/mapper/EquipmentMapper.java
+5
-0
IEquipmentDetailService.java
.../yeejoin/equipmanage/service/IEquipmentDetailService.java
+1
-0
IEquipmentService.java
...va/com/yeejoin/equipmanage/service/IEquipmentService.java
+9
-0
EquipmentDetailServiceImpl.java
.../equipmanage/service/impl/EquipmentDetailServiceImpl.java
+6
-2
EquipmentServiceImpl.java
...eejoin/equipmanage/service/impl/EquipmentServiceImpl.java
+6
-0
ScrapServiceImpl.java
...om/yeejoin/equipmanage/service/impl/ScrapServiceImpl.java
+2
-1
application.properties
...ot-system-equip/src/main/resources/application.properties
+3
-0
EquipmentMapper.xml
...ystem-equip/src/main/resources/mapper/EquipmentMapper.xml
+27
-0
StockDetailMapper.xml
...tem-equip/src/main/resources/mapper/StockDetailMapper.xml
+2
-1
No files found.
amos-boot-biz-common/src/main/java/com/yeejoin/amos/boot/biz/common/excel/CustomMergeStrategy.java
0 → 100644
View file @
c16e627b
package
com
.
yeejoin
.
amos
.
boot
.
biz
.
common
.
excel
;
import
com.alibaba.excel.metadata.Head
;
import
com.alibaba.excel.util.CollectionUtils
;
import
com.alibaba.excel.write.merge.AbstractMergeStrategy
;
import
org.apache.poi.ss.usermodel.Cell
;
import
org.apache.poi.ss.usermodel.Sheet
;
import
org.apache.poi.ss.util.CellRangeAddress
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* @description:
* @author: tw
* @createDate: 2023/2/23
*/
// 自定义合并策略 该类继承了AbstractMergeStrategy抽象合并策略,需要重写merge()方法
public
class
CustomMergeStrategy
extends
AbstractMergeStrategy
{
/**
* 分组,每几行合并一次
*/
private
List
<
Integer
>
exportFieldGroupCountList
;
/**
* 目标合并列index
*/
private
Integer
targetColumnIndex
;
// 需要开始合并单元格的首行index
private
Integer
rowIndex
;
// exportDataList为待合并目标列的值
public
CustomMergeStrategy
(
List
<
String
>
exportDataList
,
Integer
targetColumnIndex
)
{
this
.
exportFieldGroupCountList
=
getGroupCountList
(
exportDataList
);
this
.
targetColumnIndex
=
targetColumnIndex
;
}
private
void
mergeGroupColumn
(
Sheet
sheet
)
{
int
rowCount
=
rowIndex
;
for
(
Integer
count
:
exportFieldGroupCountList
)
{
if
(
count
==
1
)
{
rowCount
+=
count
;
continue
;
}
// 合并单元格
CellRangeAddress
cellRangeAddress
=
new
CellRangeAddress
(
rowCount
,
rowCount
+
count
-
1
,
targetColumnIndex
,
targetColumnIndex
);
sheet
.
addMergedRegionUnsafe
(
cellRangeAddress
);
rowCount
+=
count
;
}
}
// 该方法将目标列根据值是否相同连续可合并,存储可合并的行数
private
List
<
Integer
>
getGroupCountList
(
List
<
String
>
exportDataList
){
if
(
CollectionUtils
.
isEmpty
(
exportDataList
))
{
return
new
ArrayList
<>();
}
List
<
Integer
>
groupCountList
=
new
ArrayList
<>();
int
count
=
1
;
for
(
int
i
=
1
;
i
<
exportDataList
.
size
();
i
++)
{
if
(
exportDataList
.
get
(
i
).
equals
(
exportDataList
.
get
(
i
-
1
)))
{
count
++;
}
else
{
groupCountList
.
add
(
count
);
count
=
1
;
}
}
// 处理完最后一条后
groupCountList
.
add
(
count
);
return
groupCountList
;
}
@Override
protected
void
merge
(
Sheet
sheet
,
Cell
cell
,
Head
head
,
int
relativeRowIndex
)
{
if
(
null
==
rowIndex
)
{
rowIndex
=
cell
.
getRowIndex
();
}
// 仅从首行以及目标列的单元格开始合并,忽略其他
if
(
cell
.
getRowIndex
()
==
rowIndex
&&
cell
.
getColumnIndex
()
==
targetColumnIndex
)
{
mergeGroupColumn
(
sheet
);
}
}
}
\ No newline at end of file
amos-boot-biz-common/src/main/java/com/yeejoin/amos/boot/biz/common/excel/ExcelUtil.java
View file @
c16e627b
...
...
@@ -2,30 +2,37 @@ package com.yeejoin.amos.boot.biz.common.excel;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.ExcelReader
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.read.metadata.ReadSheet
;
import
com.alibaba.excel.support.ExcelTypeEnum
;
import
com.alibaba.excel.write.builder.ExcelWriterSheetBuilder
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.alibaba.excel.write.metadata.style.WriteCellStyle
;
import
com.alibaba.excel.write.metadata.style.WriteFont
;
import
com.alibaba.excel.write.style.HorizontalCellStyleStrategy
;
import
org.apache.poi.ss.formula.functions.T
;
import
org.apache.poi.ss.usermodel.BorderStyle
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
org.apache.poi.ss.usermodel.IndexedColors
;
import
org.apache.poi.ss.usermodel.VerticalAlignment
;
import
org.springframework.util.ReflectionUtils
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletResponse
;
import
java.beans.PropertyDescriptor
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.OutputStream
;
import
java.lang.reflect.Field
;
import
java.lang.reflect.Method
;
import
java.net.URLEncoder
;
import
java.nio.charset.StandardCharsets
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
public
class
ExcelUtil
{
...
...
@@ -80,6 +87,52 @@ public class ExcelUtil {
* @param sheetName sheet名
* @param data 导出的数据
* @param model 导出的头
*/
public
static
void
createTemplateHB
(
HttpServletResponse
response
,
String
fileName
,
String
sheetName
,
List
<?
extends
Object
>
data
,
Class
<?>
model
,
String
getName
)
{
HorizontalCellStyleStrategy
horizontalCellStyleStrategy
=
setMyCellStyle
();
try
{
//获取字段
Field
field
=
model
.
getDeclaredField
(
getName
);
PropertyDescriptor
pd
=
new
PropertyDescriptor
(
field
.
getName
(),
model
);
//获取get方法
Method
getMethod
=
pd
.
getReadMethod
();
List
<
String
>
exportDataList
=
data
.
stream
().
map
(
bject
->
ReflectionUtils
.
invokeMethod
(
getMethod
,
bject
).
toString
()).
collect
(
Collectors
.
toList
());
ExcelWriter
excelWriter
=
EasyExcel
.
write
(
getOutputStream
(
fileName
,
response
,
ExcelTypeEnum
.
XLSX
),
model
).
build
();
// 写sheet的时候注册相应的自定义合并单元格策略
WriteSheet
writeSheet
=
EasyExcel
.
writerSheet
(
sheetName
).
head
(
model
)
.
registerWriteHandler
(
new
CustomMergeStrategy
(
exportDataList
,
0
))
.
registerWriteHandler
(
new
TemplateCellWriteHandler
())
.
registerWriteHandler
(
horizontalCellStyleStrategy
)
.
build
();
excelWriter
.
write
(
data
,
writeSheet
);
excelWriter
.
finish
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
RuntimeException
(
"系统异常!"
);
}
}
/**
* 生成excel模板
*
* @param response
* @param fileName 下载的文件名,
* @param sheetName sheet名
* @param data 导出的数据
* @param model 导出的头
* @param flag true模板填充下拉 false 不填充
*/
public
static
void
createDutyTemplate
(
HttpServletResponse
response
,
String
fileName
,
String
sheetName
,
List
<?
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/controller/EquipmentController.java
View file @
c16e627b
...
...
@@ -11,6 +11,7 @@ import com.yeejoin.equipmanage.common.enums.IndustryEnum;
import
com.yeejoin.equipmanage.common.utils.CommonResponseUtil
;
import
com.yeejoin.equipmanage.common.utils.StringUtil
;
import
com.yeejoin.equipmanage.common.vo.*
;
import
com.yeejoin.equipmanage.dto.EquipmentcountDto
;
import
com.yeejoin.equipmanage.mapper.*
;
import
com.yeejoin.equipmanage.service.AbstractQRCodeFactory
;
import
com.yeejoin.equipmanage.service.IEquipmentService
;
...
...
@@ -667,4 +668,19 @@ public class EquipmentController extends AbstractBaseController {
public
List
<
Equipment
>
listAll
()
{
return
iEquipmentService
.
getAll
();
}
@PostMapping
(
value
=
"/getEquipmentcount"
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"获取装备統計"
,
notes
=
"获取装备統計"
)
public
List
<
EquipmentcountDto
>
getEquipmentcount
(
@RequestParam
(
required
=
false
)
String
name
,
@RequestParam
(
required
=
false
)
String
code
)
{
if
(
code
==
null
||
code
.
equals
(
""
)){
throw
new
RuntimeException
(
"请选择单位"
);
}
else
{
return
iEquipmentService
.
getEquipmentcount
(
name
,
code
);
}
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/controller/EquipmentDetailController.java
View file @
c16e627b
...
...
@@ -708,6 +708,13 @@ public class EquipmentDetailController extends AbstractBaseController {
return
ResponseHelper
.
buildResponse
(
iEquipmentDetailService
.
companyDeptTree
());
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/companyTreeByUserAndTypeTJ"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"消防装备单位部门树"
,
notes
=
"消防装备单位部门树"
)
public
ResponseModel
<
List
<
OrgMenuDto
>>
companyTreeByUserAndTypeTJ
()
{
return
ResponseHelper
.
buildResponse
(
iEquipmentDetailService
.
companyDeptTreeTJ
());
}
/**
* 消防装备权限获取
*
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/controller/FireFightingSystemController.java
View file @
c16e627b
...
...
@@ -4,17 +4,15 @@ import java.util.HashMap;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.ConcurrentHashMap
;
import
com.alibaba.fastjson.JSONObject
;
import
com.yeejoin.equipmanage.common.entity.*
;
import
com.yeejoin.equipmanage.common.utils.SpringUtils
;
import
com.yeejoin.equipmanage.dto.EquipmentcountDto
;
import
com.yeejoin.equipmanage.fegin.JcsFeign
;
import
io.swagger.annotations.ApiParam
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.http.MediaType
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
...
...
@@ -64,7 +62,6 @@ import com.yeejoin.equipmanage.common.vo.FireFightingSystemTreeVo;
import
com.yeejoin.equipmanage.common.vo.FireFightingSystemTypeTreeVo
;
import
com.yeejoin.equipmanage.common.vo.FireFightingSystemVo
;
import
com.yeejoin.equipmanage.common.vo.SpeIndexVo
;
import
com.yeejoin.equipmanage.fegin.JcsFeign
;
import
com.yeejoin.equipmanage.mapper.EquipmentSpecificIndexMapper
;
import
com.yeejoin.equipmanage.mapper.FireFightingSystemMapper
;
import
com.yeejoin.equipmanage.remote.RemoteSecurityService
;
...
...
@@ -81,34 +78,11 @@ import com.yeejoin.equipmanage.service.IUploadFileService;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.http.MediaType
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PutMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.exception.instance.BadRequest
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* @author zjw
...
...
@@ -912,7 +886,19 @@ public class FireFightingSystemController extends AbstractBaseController {
ExcelUtil
.
createTemplate
(
response
,
"装备信息"
,
"装备信息"
,
list
,
EquipmentExportVO
.
class
,
null
,
false
);
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
value
=
"装备信息导出"
,
notes
=
"装备信息导出"
)
@PostMapping
(
value
=
"/downGetEquipmentcount"
)
public
void
downGetEquipmentcount
(
HttpServletResponse
response
,
@RequestParam
(
required
=
false
)
String
name
,
@RequestParam
(
required
=
false
)
String
code
)
{
if
(
code
==
null
||
code
.
equals
(
""
)){
throw
new
RuntimeException
(
"请选择单位"
);
}
else
{
List
<
EquipmentcountDto
>
list
=
iEquipmentService
.
getEquipmentcount
(
name
,
code
);
ExcelUtil
.
createTemplateHB
(
response
,
"装备信息"
,
"装备信息"
,
list
,
EquipmentcountDto
.
class
,
"bizOrgName"
);
}
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/mapper/EquipmentMapper.java
View file @
c16e627b
...
...
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.yeejoin.equipmanage.common.entity.Equipment
;
import
com.yeejoin.equipmanage.common.entity.vo.*
;
import
com.yeejoin.equipmanage.common.vo.EquipmentVo
;
import
com.yeejoin.equipmanage.dto.EquipmentcountDto
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
...
...
@@ -51,4 +52,8 @@ public interface EquipmentMapper extends BaseMapper<Equipment> {
* @return
*/
EquipmentVo
getEquipBySpecific
(
@Param
(
"equipmentSpecificId"
)
Long
equipmentSpecificId
);
List
<
EquipmentcountDto
>
getEquipmentcountB
(
@Param
(
"name"
)
String
name
,
@Param
(
"code"
)
String
code
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/IEquipmentDetailService.java
View file @
c16e627b
...
...
@@ -36,4 +36,5 @@ public interface IEquipmentDetailService extends IService<EquipmentDetail> {
String
checkDelete
(
List
<
Long
>
ids
);
List
<
OrgMenuDto
>
companyDeptTree
();
List
<
OrgMenuDto
>
companyDeptTreeTJ
();
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/IEquipmentService.java
View file @
c16e627b
...
...
@@ -5,6 +5,7 @@ import com.yeejoin.equipmanage.common.entity.Equipment;
import
com.yeejoin.equipmanage.common.entity.vo.EquipmentAppVO
;
import
com.yeejoin.equipmanage.common.vo.EquipmentVo
;
import
com.yeejoin.equipmanage.common.entity.vo.ImportantEquipmentVO
;
import
com.yeejoin.equipmanage.dto.EquipmentcountDto
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -126,4 +127,12 @@ public interface IEquipmentService extends IService<Equipment> {
* @return
*/
EquipmentVo
getEquipBySpecific
(
Long
equipmentSpecificId
);
/**
*
* 装备统计
* */
List
<
EquipmentcountDto
>
getEquipmentcount
(
String
name
,
String
code
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/EquipmentDetailServiceImpl.java
View file @
c16e627b
...
...
@@ -84,7 +84,8 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
@Value
(
"${auth-key-fire-equip:fire_equip_info}"
)
private
String
authKey
;
@Value
(
"${auth-key-fire-equip-tj:fire_equip_tj}"
)
private
String
authKeyTJ
;
@Autowired
private
ISystemDicService
iSystemDicService
;
...
...
@@ -308,6 +309,9 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
public
List
<
OrgMenuDto
>
companyDeptTree
()
{
return
jcsRemoteService
.
getCompanyDeptTreeWithAuth
(
authKey
,
null
);
}
@Override
public
List
<
OrgMenuDto
>
companyDeptTreeTJ
()
{
return
jcsRemoteService
.
getCompanyDeptTreeWithAuth
(
authKeyTJ
,
null
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/EquipmentServiceImpl.java
View file @
c16e627b
...
...
@@ -9,6 +9,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import
com.yeejoin.equipmanage.common.entity.*
;
import
com.yeejoin.equipmanage.common.entity.vo.*
;
import
com.yeejoin.equipmanage.common.vo.EquipmentVo
;
import
com.yeejoin.equipmanage.dto.EquipmentcountDto
;
import
com.yeejoin.equipmanage.fegin.PatrolFeign
;
import
com.yeejoin.equipmanage.mapper.*
;
import
com.yeejoin.equipmanage.remote.RemoteSecurityService
;
...
...
@@ -457,4 +458,9 @@ public class EquipmentServiceImpl extends ServiceImpl<EquipmentMapper, Equipment
{
return
equipmentMapper
.
getEquipBySpecific
(
equipmentSpecificId
);
}
@Override
public
List
<
EquipmentcountDto
>
getEquipmentcount
(
String
name
,
String
code
)
{
return
equipmentMapper
.
getEquipmentcountB
(
name
,
code
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/ScrapServiceImpl.java
View file @
c16e627b
...
...
@@ -296,7 +296,8 @@ public class ScrapServiceImpl extends ServiceImpl<ScrapMapper, Scrap> implements
StockDetail
stockDetail
=
stockDetailService
.
getById
(
id
);
QueryWrapper
<
EquipmentOnCar
>
queryWrapper
=
new
QueryWrapper
<>();
equipmentOnCarMapper
.
delete
(
queryWrapper
.
eq
(
"stock_detail_id"
,
id
));
stockDetail
.
setAmount
(
stockDetail
.
getAmount
()
+
1.0
);
//stockDetail.setAmount(stockDetail.getAmount() + 1.0);
stockDetail
.
setAmount
(
stockDetail
.
getAmount
());
stockDetail
.
setStatus
(
String
.
valueOf
(
EquipStatusEnum
.
SCRAP
.
getCode
()));
stockDetailService
.
updateById
(
stockDetail
);
}
...
...
amos-boot-system-equip/src/main/resources/application.properties
View file @
c16e627b
...
...
@@ -134,6 +134,9 @@ auth-key-fire-system=fire_system_info
auth-key-fire-system-build
=
fire_system_build_info
# 权限标识-消防装备
auth-key-fire-equip
=
fire_equip_info
# 权限标识-消防装备统计
auth-key-fire-equip-tj
=
fire_equip_tj
# 权限标识-消防视频
auth-key-fire-video
=
fire_video_info
# 权限标识-消防建筑视频
...
...
amos-boot-system-equip/src/main/resources/mapper/EquipmentMapper.xml
View file @
c16e627b
...
...
@@ -269,4 +269,31 @@ FROM
</select>
<select
id=
"getEquipmentcountB"
resultType=
"com.yeejoin.equipmanage.dto.EquipmentcountDto"
>
select
uuid() AS id ,
kname as equipmentName,
kid as equipmentId,
bizOrgCode,
bizOrgName,
sum(case when status='在位' then amountn else 0 end) as `zw`,
sum(case when status='报废' then amountn else 0 end) as `bf`,
sum(case when status='车载' then amountn else 0 end) as `cz`,
sum(case when status='配装' then amountn else 0 end) as `pz`
from countequipment
<where>
bizOrgCode like CONCAT(#{code},"%" )
<if
test=
"name != null and name != '' "
>
and kname like CONCAT(#{name},"%" )
</if>
</where>
group by bizOrgCode,bizOrgName,kid,kname
</select>
</mapper>
amos-boot-system-equip/src/main/resources/mapper/StockDetailMapper.xml
View file @
c16e627b
...
...
@@ -90,7 +90,8 @@
<foreach
collection=
"list"
item=
"item"
index=
"index"
open=
""
close=
""
separator=
";"
>
update wl_stock_detail
<trim
prefix=
"set"
prefixOverrides=
","
suffix=
"where id=#{item.stockDetailId}"
>
amount = amount - 1,
-- amount = amount - 1,
amount = amount,
<if
test=
"status != null"
>
status=#{status}
</if>
</trim>
</foreach>
...
...
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