Merge branch 'macode20240820' into dev-nx

This commit is contained in:
liang.chao 2024-08-21 14:13:58 +08:00
commit 5311cb0c5c
9 changed files with 76 additions and 18 deletions

View File

@ -176,6 +176,8 @@ public class LeaseOutDetails implements Serializable {
@ApiModelProperty(value = "数量出库 -> 操作前库存量") @ApiModelProperty(value = "数量出库 -> 操作前库存量")
private Integer num; private Integer num;
/** 操作前库存 */
private int preStoreNum;
/** 操作后库存 */ /** 操作后库存 */
private int postStoreNum; private int postStoreNum;

View File

@ -309,7 +309,7 @@ public class LogAspect
bmStorageLog.setTaskId(String.valueOf(lod.getTaskId())); bmStorageLog.setTaskId(String.valueOf(lod.getTaskId()));
bmStorageLog.setTypeId(lod.getTypeId()); bmStorageLog.setTypeId(lod.getTypeId());
bmStorageLog.setTypeName(lod.getMaCode()); bmStorageLog.setTypeName(lod.getMaCode());
bmStorageLog.setPreStoreNum(lod.getNum()); bmStorageLog.setPreStoreNum(lod.getPreStoreNum());
bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue()); bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue());
bmStorageLog.setPostStoreNum(lod.getPostStoreNum()); bmStorageLog.setPostStoreNum(lod.getPostStoreNum());
bmStorageLogList.add(bmStorageLog); bmStorageLogList.add(bmStorageLog);
@ -321,7 +321,7 @@ public class LogAspect
bmStorageLog.setTaskId(String.valueOf(lod.getTaskId())); bmStorageLog.setTaskId(String.valueOf(lod.getTaskId()));
bmStorageLog.setTypeId(lod.getTypeId()); bmStorageLog.setTypeId(lod.getTypeId());
bmStorageLog.setTypeName(lod.getMaCode()); bmStorageLog.setTypeName(lod.getMaCode());
bmStorageLog.setPreStoreNum(lod.getNum()); bmStorageLog.setPreStoreNum(lod.getPreStoreNum());
bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue()); bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue());
bmStorageLog.setPostStoreNum(lod.getPostStoreNum()); bmStorageLog.setPostStoreNum(lod.getPostStoreNum());
bmStorageLogList.add(bmStorageLog); bmStorageLogList.add(bmStorageLog);

View File

@ -109,4 +109,6 @@ public interface LeaseOutDetailsMapper {
int updateLeaseApplyDetails(@Param("record") LeaseOutDetails record); int updateLeaseApplyDetails(@Param("record") LeaseOutDetails record);
List<LeaseOutDetails> getOutboundOrder(String parentId); List<LeaseOutDetails> getOutboundOrder(String parentId);
int getCountOfCodeMachine(@Param("record") LeaseOutDetails record);
} }

View File

@ -154,19 +154,20 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService {
try { try {
// 1判断是否重复提交 // 1判断是否重复提交
res = checkRepeatSubmit(record); res = checkRepeatSubmit(record);
record.setPreStoreNum(getStorageNum(record));
if (res > 0) { if (res > 0) {
if ((record.getManageType() == 1 || record.getManageType() == 2) && record.getInputNum() != null) { if ((record.getManageType() == 1 || record.getManageType() == 2) && record.getInputNum() != null) {
record.setOutNum(record.getInputNum().doubleValue()); record.setOutNum(record.getInputNum().doubleValue());
} }
//2判断成套机具出库库存是否足够 //2判断成套机具出库库存是否足够
if (record.getManageType() == 2) { /* if (record.getManageType() == 2) {
res = checkStorageNumCt(record); res = checkStorageNumCt(record);
if (res == 0) { if (res == 0) {
throw new RuntimeException("出库失败,库存不足"); throw new RuntimeException("出库失败,库存不足");
} }
} else { } else {*/
res = checkStorageNum(record); res = checkStorageNum(record);
} // }
if (res > 0) { if (res > 0) {
// 3插入出库记录修改库存修改机具状态 // 3插入出库记录修改库存修改机具状态
@ -258,8 +259,15 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService {
//判断(ma_type 设备规格表)中的库存够不够出库的 //判断(ma_type 设备规格表)中的库存够不够出库的
MaType maType = leaseOutDetailsMapper.selectByTypeId(record); MaType maType = leaseOutDetailsMapper.selectByTypeId(record);
if (maType != null) { if (maType != null) {
if (maType.getNum() == null || maType.getNum().compareTo(BigDecimal.valueOf(record.getOutNum())) < 0) { if ("0".equals(maType.getManageType())) {
return 0; int count = leaseOutDetailsMapper.getCountOfCodeMachine(record);
if (BigDecimal.valueOf(count).compareTo(BigDecimal.valueOf(record.getOutNum())) < 0) {
return 0;
}
} else if ("1".equals(maType.getManageType())) {
if (maType.getNum() == null || maType.getNum().compareTo(BigDecimal.valueOf(record.getOutNum())) < 0) {
return 0;
}
} }
} }
return 1; return 1;
@ -272,7 +280,11 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService {
//判断(ma_type 设备规格表)中的库存够不够出库的 //判断(ma_type 设备规格表)中的库存够不够出库的
MaType maType = leaseOutDetailsMapper.selectByTypeId(record); MaType maType = leaseOutDetailsMapper.selectByTypeId(record);
if (maType != null) { if (maType != null) {
return maType.getNum().intValue(); if ("1".equals(maType.getManageType())) {
return maType.getNum().intValue();
} else {
return leaseOutDetailsMapper.getCountOfCodeMachine(record);
}
} }
return 0; return 0;
} }

View File

@ -353,7 +353,7 @@ public class TmTaskServiceImpl implements TmTaskService {
List<TmTask> leaseDetailByParentId = tmTaskMapper.getLeaseDetailByParentId(record); List<TmTask> leaseDetailByParentId = tmTaskMapper.getLeaseDetailByParentId(record);
return leaseDetailByParentId; return leaseDetailByParentId;
} }
/* for (TmTask tmTask : leaseDetailByParentId) { /* for (TmTask tmTask : leaseDetailByParentId) {
if ("2".equals(tmTask.getManageType())) { if ("2".equals(tmTask.getManageType())) {
List<TmTask> manageTypeByTypeId = tmTaskMapper.getManageTypeByTypeId(tmTask); List<TmTask> manageTypeByTypeId = tmTaskMapper.getManageTypeByTypeId(tmTask);
// 目前先默认成套只能数量出库或编码出库 // 目前先默认成套只能数量出库或编码出库

View File

@ -476,5 +476,16 @@
WHERE WHERE
lod.parent_id = #{parentId} lod.parent_id = #{parentId}
</select> </select>
<select id="getCountOfCodeMachine" resultType="java.lang.Integer">
select count(mm.ma_id)
FROM ma_type mt
left join ma_machine mm on mm.type_id=mt.type_id
WHERE
mm.type_id = #{record.typeId}
and mm.ma_code is not null
and mm.ma_status in (15)
and mt.`level` = 4
and mt.del_flag = '0'
</select>
</mapper> </mapper>

View File

@ -648,14 +648,28 @@
WHEN mt.manage_type = '0' THEN WHEN mt.manage_type = '0' THEN
'编号' ELSE '计数' '编号' ELSE '计数'
END manageTypeName, END manageTypeName,
mt.num, CASE mt.manage_type
WHEN 0 THEN
IFNULL(subquery0.num, 0)
ELSE
IFNULL(mt.num, 0)
END as num,
(lad.pre_num -IF( lad.al_num IS NULL, '0', lad.al_num )) AS outNum, (lad.pre_num -IF( lad.al_num IS NULL, '0', lad.al_num )) AS outNum,
mm.ma_code AS maCode subquery0.ma_code AS maCode
FROM FROM
lease_apply_details lad lease_apply_details lad
LEFT JOIN ma_type mt ON lad.type_id = mt.type_id LEFT JOIN ma_type mt ON lad.type_id = mt.type_id
LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id
LEFT JOIN ma_machine mm ON lad.type_id = mm.type_id LEFT JOIN (SELECT mt.type_id,
mt2.type_name AS typeName,
mt.type_name AS typeModelName,
mm.ma_code,
count(mm.ma_id) num
FROM ma_machine mm
LEFT JOIN ma_type mt ON mt.type_id = mm.type_id
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
WHERE mm.ma_code is not null and mm.ma_status in (15)
GROUP BY mt.type_id) AS subquery0 ON subquery0.type_id = mt.type_id
WHERE WHERE
lad.parennt_id = #{record.id} lad.parennt_id = #{record.id}
GROUP BY GROUP BY
@ -1115,7 +1129,6 @@
mt2.type_name as typeName, mt2.type_name as typeName,
mt.type_name as typeModelName, mt.type_name as typeModelName,
mt.manage_type as manageType, mt.manage_type as manageType,
mt.num as num,
GROUP_CONCAT(su.user_id) as userId, GROUP_CONCAT(su.user_id) as userId,
GROUP_CONCAT(su.nick_name) as userName, GROUP_CONCAT(su.nick_name) as userName,
lad.status as status, lad.status as status,
@ -1300,7 +1313,6 @@
mt2.type_name as typeName, mt2.type_name as typeName,
mt.type_name as typeModelName, mt.type_name as typeModelName,
mt.manage_type as manageType, mt.manage_type as manageType,
mt.num as num,
GROUP_CONCAT(su.nick_name) as userName, GROUP_CONCAT(su.nick_name) as userName,
GROUP_CONCAT(su.user_id) as userId, GROUP_CONCAT(su.user_id) as userId,
lad.status as status, lad.status as status,

View File

@ -117,8 +117,8 @@ public class RepairTestInputServiceImpl implements RepairTestInputService {
mapper.updateMaTypeNum(dto.getTypeId(), num); mapper.updateMaTypeNum(dto.getTypeId(), num);
if (Objects.equals("0", dto.getType())) { if (Objects.equals("0", dto.getType())) {
// 查询机具状态-在库的id管理方式为编号的需更新机具设备的机具状态 // 查询机具状态-在库的id管理方式为编号的需更新机具设备的机具状态
int dicId = mapper.getDicByMaStatusId("ma_status", "在库"); // int dicId = mapper.getDicByMaStatusId("ma_status", "在库");
mapper.updateMaMachineStatus(dicId, dto.getMaId()); mapper.updateMaMachineStatus(15, dto.getMaId());
} }
} }
} }

View File

@ -8,12 +8,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT mt2.type_name as typeName, SELECT mt2.type_name as typeName,
mt.type_name as typeModelName, mt.type_name as typeModelName,
mt.unit_name as unit, mt.unit_name as unit,
IFNULL(mt.num, 0) as num, CASE mt.manage_type
WHEN 0 THEN
IFNULL(subquery0.num, 0)
ELSE
IFNULL(mt.num, 0)
END as num,
IFNULL(subquery1.usNum, 0) as usNum, IFNULL(subquery1.usNum, 0) as usNum,
IFNULL(subquery2.repairNum, 0) as repairNum, IFNULL(subquery2.repairNum, 0) as repairNum,
IFNULL(subquery3.repairInputNum, 0) as repairInputNum, IFNULL(subquery3.repairInputNum, 0) as repairInputNum,
IFNULL(subquery4.inputNum, 0) as inputNum, IFNULL(subquery4.inputNum, 0) as inputNum,
IFNULL(mt.num, 0) + IFNULL(subquery1.usNum, 0) + IFNULL(subquery2.repairNum, 0) + IFNULL(subquery3.repairInputNum, 0) as allNum, CASE mt.manage_type
WHEN 0 THEN
IFNULL(subquery0.num, 0)+ IFNULL(subquery1.usNum, 0) + IFNULL(subquery2.repairNum, 0) + IFNULL(subquery3.repairInputNum, 0)
ELSE
IFNULL(mt.num, 0)+ IFNULL(subquery1.usNum, 0) + IFNULL(subquery2.repairNum, 0) + IFNULL(subquery3.repairInputNum, 0)
END as allNum,
CASE mt.manage_type CASE mt.manage_type
WHEN 0 THEN WHEN 0 THEN
'否' '否'
@ -22,6 +32,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
END manageType END manageType
FROM ma_type mt FROM ma_type mt
LEFT JOIN (SELECT mt.type_id,
mt2.type_name AS typeName,
mt.type_name AS typeModelName,
count(mm.ma_id) num
FROM ma_machine mm
LEFT JOIN ma_type mt ON mt.type_id = mm.type_id
LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id
WHERE mm.ma_code is not null and mm.ma_status in (15)
GROUP BY mt.type_id) AS subquery0 ON subquery0.type_id = mt.type_id
LEFT JOIN (SELECT subquery1.type_id, LEFT JOIN (SELECT subquery1.type_id,
subquery1.typeName, subquery1.typeName,
subquery1.typeModelName, subquery1.typeModelName,