diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java index 744ccd476..9ccf18fb9 100644 --- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java +++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/dto/ReconciliationDTO.java @@ -252,5 +252,8 @@ public class ReconciliationDTO extends BaseVOEntity{ @ApiModelProperty(value = "财务审核意见") private String financeReviewOpinion; - -} + @ApiModelProperty(value = "无税费用") + private BigDecimal taxFreeFee; + @ApiModelProperty(value = "税额") + private BigDecimal taxAmount; +} \ No newline at end of file diff --git a/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java b/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java index 176e40b78..20270d1b2 100644 --- a/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java +++ b/mhd_finance/src/main/java/com/linke/finance/application/server/reconciliation/ReconciliationApplicationService.java @@ -832,6 +832,7 @@ public class ReconciliationApplicationService { updateDO.setFinanceManager(reconciliationDTO.getFinanceManager()); updateDO.setFinanceReviewStatus(financeReviewStatus); updateDO.setFinanceReviewOpinion(reconciliationDTO.getFinanceReviewOpinion()); + updateDO.setAuditorName(userPo.getUserName()); // 执行更新 boolean result = reconciliationDomainService.update(updateDO); diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/entity/Reconciliation.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/entity/Reconciliation.java index 16c5c3cb7..934ae0aa5 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/entity/Reconciliation.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/entity/Reconciliation.java @@ -255,4 +255,9 @@ public class Reconciliation extends BaseVOEntity{ @ApiModelProperty(value = "财务审核意见") private String financeReviewOpinion; -} + @ApiModelProperty(value = "无税费用") + private BigDecimal taxFreeFee; + + @ApiModelProperty(value = "税额") + private BigDecimal taxAmount; +} \ No newline at end of file diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/po/ReconciliationPO.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/po/ReconciliationPO.java index 6f02f2553..e3a9ed628 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/po/ReconciliationPO.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/po/ReconciliationPO.java @@ -263,4 +263,8 @@ public class ReconciliationPO extends BaseVOEntity{ @ApiModelProperty(value = "财务审核意见") private String financeReviewOpinion; -} + @ApiModelProperty(value = "无税费用") + private BigDecimal taxFreeFee; + @ApiModelProperty(value = "税额") + private BigDecimal taxAmount; +} \ No newline at end of file diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java index 7b7feaeeb..9eeabe0bb 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/todo/ReconciliationDO.java @@ -292,4 +292,9 @@ public class ReconciliationDO extends BaseVOEntity{ @ApiModelProperty(value = "账单科目明细") public List reconciliationAccountDTOList; -} + + @ApiModelProperty(value = "无税费用") + private BigDecimal taxFreeFee; + @ApiModelProperty(value = "税额") + private BigDecimal taxAmount; +} \ No newline at end of file diff --git a/mhd_finance/src/main/resources/mapper/reconciliation/ReconciliationMapper.xml b/mhd_finance/src/main/resources/mapper/reconciliation/ReconciliationMapper.xml index 6bba75cf4..48f89613d 100644 --- a/mhd_finance/src/main/resources/mapper/reconciliation/ReconciliationMapper.xml +++ b/mhd_finance/src/main/resources/mapper/reconciliation/ReconciliationMapper.xml @@ -279,7 +279,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" sk_synchronous_status, sk_synchronous_time, sk_nc_id, - account_information + account_information, + tax_amount, + tax_free_fee ) VALUES ( #{verificationMoney}, #{settlementCount}, @@ -352,7 +354,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{skSynchronousStatus}, #{skSynchronousTime}, #{skNcId}, - #{accountInformation} + #{accountInformation}, + #{taxAmount}, + #{taxFreeFee} ) \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/repository/persistence/HandoverTaskOrderImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/repository/persistence/HandoverTaskOrderImpl.java index d89cf45fc..47d8b07b1 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/repository/persistence/HandoverTaskOrderImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/repository/persistence/HandoverTaskOrderImpl.java @@ -18,6 +18,7 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.stream.Collectors; /** * 交接作业单Service业务层处理 @@ -88,6 +89,17 @@ public class HandoverTaskOrderImpl extends ServiceImpl handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds(); + if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) { + return false; + } + // 过滤掉 null 值 + handoverTaskOrderIds = handoverTaskOrderIds.stream() + .filter(id -> id != null) + .collect(Collectors.toList()); + if (handoverTaskOrderIds.isEmpty()) { + return false; + } HandoverTaskOrder handoverTaskOrder = new HandoverTaskOrder(); handoverTaskOrder.setTaskDistribution(1); handoverTaskOrder.setTaskDistributionTime(new Date()); @@ -95,7 +107,7 @@ public class HandoverTaskOrderImpl extends ServiceImpl().lambda() - .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds())); + .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds)); return i > 0; } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java index 4b5d188d3..a44639a5c 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java @@ -36,6 +36,7 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.stream.Collectors; /** * 交接作业单 @@ -108,6 +109,17 @@ public class HandoverTaskOrderDomainService { * @return Boolean */ public Boolean allocationPlatform(HandoverTaskOrderDO handoverTaskOrderDO){ + List handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds(); + if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) { + return false; + } + // 过滤掉 null 值 + handoverTaskOrderIds = handoverTaskOrderIds.stream() + .filter(id -> id != null) + .collect(Collectors.toList()); + if (handoverTaskOrderIds.isEmpty()) { + return false; + } LoginUser loginUser = SecurityUtils.getLoginUser(); return handoverTaskOrderService.update(null, new UpdateWrapper().lambda() .set(HandoverTaskOrder::getPlatformUseStatus, 1) @@ -120,7 +132,7 @@ public class HandoverTaskOrderDomainService { .set(HandoverTaskOrder::getUpdateBy, loginUser.getUserid()) .set(HandoverTaskOrder::getUpdateByName, loginUser.getUsername()) .set(HandoverTaskOrder::getUpdateTime, new Date()) - .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds()) + .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds) ); } @@ -132,13 +144,24 @@ public class HandoverTaskOrderDomainService { * @return Boolean */ public Boolean releasePlatform(HandoverTaskOrderDO handoverTaskOrderDO){ + List handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds(); + if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) { + return false; + } + // 过滤掉 null 值 + handoverTaskOrderIds = handoverTaskOrderIds.stream() + .filter(id -> id != null) + .collect(Collectors.toList()); + if (handoverTaskOrderIds.isEmpty()) { + return false; + } LoginUser loginUser = SecurityUtils.getLoginUser(); return handoverTaskOrderService.update(null, new UpdateWrapper().lambda() .set(HandoverTaskOrder::getPlatformUseStatus, 3) .set(HandoverTaskOrder::getUpdateBy, loginUser.getUserid()) .set(HandoverTaskOrder::getUpdateByName, loginUser.getUsername()) .set(HandoverTaskOrder::getUpdateTime, new Date()) - .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds()) + .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds) ); } @@ -152,7 +175,14 @@ public class HandoverTaskOrderDomainService { */ public Boolean completeHandover(HandoverTaskOrderDO handoverTaskOrderDO) { List handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds(); - if (handoverTaskOrderIds == null || handoverTaskOrderIds.size() == 0) { + if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) { + return false; + } + // 过滤掉 null 值 + handoverTaskOrderIds = handoverTaskOrderIds.stream() + .filter(id -> id != null) + .collect(Collectors.toList()); + if (handoverTaskOrderIds.isEmpty()) { return false; } LoginUser loginUser = SecurityUtils.getLoginUser(); @@ -163,7 +193,7 @@ public class HandoverTaskOrderDomainService { .set(HandoverTaskOrder::getUpdateBy, loginUser.getUserid()) .set(HandoverTaskOrder::getUpdateByName, loginUser.getUsername()) .set(HandoverTaskOrder::getUpdateTime, new Date()) - .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds()) + .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds) ); } @@ -293,8 +323,21 @@ public class HandoverTaskOrderDomainService { */ @Transactional(rollbackFor = Exception.class) public boolean taskDistribution(HandoverTaskOrderDO handoverTaskOrderDO) { + List handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds(); + if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) { + throw new ServiceException("未选择交接作业单,请重新选择"); + } + // 过滤掉 null 值 + handoverTaskOrderIds = handoverTaskOrderIds.stream() + .filter(id -> id != null) + .collect(Collectors.toList()); + if (handoverTaskOrderIds.isEmpty()) { + throw new ServiceException("交接作业单ID不能为空,请重新选择"); + } + // 更新 DO 对象中的列表,确保后续调用使用过滤后的列表 + handoverTaskOrderDO.setHandoverTaskOrderIds(handoverTaskOrderIds); List handoverTaskOrders = handoverTaskOrderService.list(new LambdaQueryWrapper() - .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds()) + .in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds) .eq(HandoverTaskOrder::getTaskDistribution, 2) ); if (CollectionUtils.isEmpty(handoverTaskOrders)) { diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/handoverTaskOrder/HandoverTaskOrderDTO.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/handoverTaskOrder/HandoverTaskOrderDTO.java index 0a9f4c95b..1f64a802a 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/handoverTaskOrder/HandoverTaskOrderDTO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/handoverTaskOrder/HandoverTaskOrderDTO.java @@ -6,6 +6,7 @@ import com.mhd.common.core.web.domain.BaseVOEntity; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -132,6 +133,35 @@ public class HandoverTaskOrderDTO extends BaseVOEntity { @ApiModelProperty("交接作业单id") private List handoverTaskOrderIds; + /** + * 自定义setter方法,支持单个整数和数组两种格式 + */ + public void setHandoverTaskOrderIds(Object value) { + if (value == null) { + this.handoverTaskOrderIds = null; + return; + } + + List result = new ArrayList<>(); + + if (value instanceof List) { + // 如果是列表,遍历并转换 + List list = (List) value; + for (Object item : list) { + if (item != null) { + if (item instanceof Number) { + result.add(((Number) item).longValue()); + } + } + } + } else if (value instanceof Number) { + // 如果是单个数字,转换为列表 + result.add(((Number) value).longValue()); + } + + this.handoverTaskOrderIds = result.isEmpty() ? null : result; + } + @ApiModelProperty("作业人用户ID") @Excel(name = "作业人用户ID") private Long operatorsBy;