diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java index d88b559f5..bb67a7a27 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/contractManage/ContractManageApplicationService.java @@ -5,9 +5,12 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.mhd.basic.domain.contractManage.repository.po.ContractManagePO; import com.mhd.basic.domain.contractManage.repository.todo.ContractManageDO; import com.mhd.basic.domain.contractManage.service.ContractManageDomainService; +import com.mhd.basic.domain.contractManageDetail.entity.ContractManageDetail; +import com.mhd.basic.domain.contractManageDetail.repository.mapper.ContractManageDetailMapper; import com.mhd.basic.domain.contractManageDetail.repository.po.ContractManageDetailPO; import com.mhd.basic.domain.contractManageDetail.repository.todo.ContractManageDetailDO; import com.mhd.basic.domain.contractManageDetail.service.ContractManageDetailDomainService; @@ -61,6 +64,8 @@ public class ContractManageApplicationService { @Autowired private ContractManageDetailDomainService contractManageDetailDomainService; @Autowired + private ContractManageDetailMapper contractManageDetailMapper; + @Autowired private BmsServiceFeign bmsServiceFeign; @Autowired @@ -261,15 +266,16 @@ public class ContractManageApplicationService { throw new DigitalLogisticsException(UserError.TIMEOUT); } //根据合同编码查询保存合同信息 - ContractManagePO contractManagePO = contractManageDomainService.getInfoByCode(contractManageDO.getContractNumber()); + ContractManagePO contractManagePO = contractManageDomainService.getInfoByCode1(contractManageDO.getOriginalContractNumber()); //保存合同详情科目 List contractManageDetailDTOList = contractManageDO.getContractManageDetailDTOList(); if(null != contractManageDetailDTOList && contractManageDetailDTOList.size()>0){ //查询费用科目、计费周期数据字典 List billingAttributesList = dictTypeService.selectDictDataByType(DictCode.BILLING_ATTRIBUTES.getCode()); + int delete = contractManageDetailMapper.delete(new LambdaQueryWrapper().eq(ContractManageDetail::getContractManageId, contractManageDO.getContractManageId())); for (ContractManageDetailDTO contractManageDetailDTO : contractManageDetailDTOList) { ContractManageDetailDO contractManageDetailDO = new ContractManageDetailDO(); - BeanUtils.copyProperties(contractManageDetailDTO,contractManageDetailDO); + BeanUtils.copyProperties(contractManageDetailDTO,contractManageDetailDO,"contractManageDetailId"); //根据费用科目查询费用信息 if(StringUtils.isNotEmpty(contractManageDetailDTO.getSecondSubjectCode())){ ExpenseAccountPO expenseAccountPO = expenseAccountDomainService.getInfoByCode(contractManageDetailDTO.getSecondSubjectCode()); @@ -332,10 +338,11 @@ public class ContractManageApplicationService { if(null != contractManagePO){ contractManageDetailDO.setContractManageId(contractManagePO.getContractManageId()); } + //contractManageDetailDO.setContractManageId(contractManageDO.getContractManageId()); contractManageDetailDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); contractManageDetailDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); contractManageDetailDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); - contractManageDetailDomainService.saveOrUpdate(contractManageDetailDO); + contractManageDetailDomainService.insert(contractManageDetailDO); } } } @@ -481,4 +488,4 @@ public class ContractManageApplicationService { public ContractManagePO getGeneralContract() { return contractManageDomainService.getGeneralContract(); } -} +} \ No newline at end of file diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/entity/ContractManage.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/entity/ContractManage.java index aaa6e2969..8cdff265c 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/entity/ContractManage.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/entity/ContractManage.java @@ -1,6 +1,8 @@ package com.mhd.basic.domain.contractManage.entity; +import com.baomidou.mybatisplus.annotation.FieldStrategy; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.mhd.common.core.annotation.Excel; import io.swagger.annotations.ApiModelProperty; @@ -68,14 +70,17 @@ public class ContractManage extends BaseVOEntity{ @ApiModelProperty("结算主体") @Excel(name = "结算主体") + @TableField(updateStrategy = FieldStrategy.IGNORED) private String settlementCustomers; @ApiModelProperty("结算主体id") @Excel(name = "结算主体id") + @TableField(updateStrategy = FieldStrategy.IGNORED) private Long settlementCustomersId; @ApiModelProperty("结算主体code") @Excel(name = "结算主体code") + @TableField(updateStrategy = FieldStrategy.IGNORED) private String settlementCustomersCode; @ApiModelProperty("我司身份(1-甲方,2-乙方)") diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java index f0db23e50..ca8323221 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/contractManage/service/ContractManageDomainService.java @@ -143,6 +143,42 @@ public class ContractManageDomainService { return contractManagePO; } + public ContractManagePO getInfoByCode1(String contractNumber) { + ContractManagePO contractManagePO = new ContractManagePO(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ContractManage::getOriginalContractNumber,contractNumber); + queryWrapper.eq(ContractManage::getDelFlag,1); + ContractManage contractManage = contractManageService.getOne(queryWrapper); + if(null != contractManage){ + BeanUtils.copyProperties(contractManage,contractManagePO); + //得到合同后,查询合同明细 + List contractManageDetailPOList = contractManageDetailDomainService.queryListByManageId(contractManagePO.getContractManageId()); + List contractManageDetailSaveList = new ArrayList<>(); + if(contractManageDetailPOList != null && contractManageDetailPOList.size()>0){ + //将临时合同中没有,但是通用合同中有的数据过滤出(使用 ObjectUtil.equal 避免 firstSubjectCode/secondSubjectCode 为 null 时 NPE) + contractManageDetailSaveList = contractManageDetailPOList.stream().filter(item -> contractManageDetailPOList.stream().anyMatch(item1 -> ObjectUtil.equal(item1.getFirstSubjectCode(), item.getFirstSubjectCode()) && ObjectUtil.equal(item1.getSecondSubjectCode(), item.getSecondSubjectCode()) && item1.getSubjectType()==1)).collect(Collectors.toList()); + //首先根据结算科目类型将临时合同过滤出 + List tempContractManageDetailPOList = contractManageDetailPOList.stream().filter(item -> item.getSubjectType()==2).collect(Collectors.toList()); + //遍历两个集合,将相同费用科目code的数据,进行比较,如果结算科目类型是临时且合同有效期有效,则使用该条数据,将另一条移除 + for (ContractManageDetailPO manageDetailPO : tempContractManageDetailPOList) { + for (ContractManageDetailPO contractManageDetailPO : contractManageDetailPOList) { + if(ObjectUtil.equal(contractManageDetailPO.getFirstSubjectCode(), manageDetailPO.getFirstSubjectCode()) && ObjectUtil.equal(contractManageDetailPO.getSecondSubjectCode(), manageDetailPO.getSecondSubjectCode())){ + //判断如果是临时合同在有效期内,则将该条数据保存到集合contractManageDetailSaveList + DateTime start = DateUtil.parseDate(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd")); + DateTime end = DateUtil.parseDateTime(DateUtil.format(manageDetailPO.getSubjectEffectiveDate(),"yyyy-MM-dd")); + DateTime now = DateUtil.beginOfDay(DateUtil.date()); + if (now.isAfterOrEquals(start) && now.isBefore(end)) { + contractManageDetailSaveList.add(manageDetailPO); + } + } + } + } + } + contractManagePO.setContractManageDetailPOList(contractManageDetailSaveList); + } + return contractManagePO; + } + public void contractEffectiveDateSet() { /* 1:查询合同有效期开始时间在今天(含)之前的,并且合同状态为未生效,设置为已生效状态 @@ -190,4 +226,4 @@ public class ContractManageDomainService { } return contractManagePO; } -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java b/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java index be7e390b5..8c50e8ef8 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/application/server/businessDocument/BusinessDocumentApplicationService.java @@ -31,6 +31,7 @@ import com.mhd.bms.interfaces.dto.businessDocument.BusinessDocumentDTO; import com.mhd.common.core.domain.dto.BusinessDataPushDTO; import com.mhd.common.core.domain.po.OrganizationPo; import com.mhd.common.core.domain.po.SysDictDataVo; +import com.mhd.common.core.domain.po.UserPo; import com.mhd.common.core.enums.BelongModuleCode; import com.mhd.common.core.enums.DictCode; import com.mhd.common.core.exception.ServiceException; @@ -151,6 +152,9 @@ public class BusinessDocumentApplicationService { businessDocumentDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); businessDocumentDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); businessDocumentDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); + UserPo userPo = loginUser.getUserPo(); + businessDocumentDO.setCreateBy(userPo.getUserId()); + businessDocumentDO.setCreateByName(userPo.getUserName()); //校验使用的表单是否必填校验 checkDoucumentType(businessDocumentDO); //处理数据 @@ -412,6 +416,9 @@ public class BusinessDocumentApplicationService { checkDoucumentType(businessDocumentDO); //处理数据 handleDate(businessDocumentDO); + UserPo userPo = loginUser.getUserPo(); + businessDocumentDO.setUpdateBy(userPo.getUserId()); + businessDocumentDO.setUpdateByName(userPo.getUserName()); return businessDocumentDomainService.update(businessDocumentDO); } @@ -588,8 +595,11 @@ public class BusinessDocumentApplicationService { if(businessDocumentPO.getBusinessState()!=2){ throw new ServiceException("所选记录"+ businessDocumentPO.getBusinessFlow() +"不是已生效状态不可操作"); } - //生成计费流水 - billingStatementDomainService.generateFlow(businessDocumentPO); + Integer auditOperation = businessDocumentDTO.getAuditOperation(); + if(auditOperation != null && auditOperation == 1){ + //生成计费流水 + billingStatementDomainService.generateFlow(businessDocumentPO); + } businessDocumentIdLongList.add(businessDocumentIdLong); } if(businessDocumentIdLongList.size()>0){ @@ -883,4 +893,4 @@ public class BusinessDocumentApplicationService { log.info("定时任务进入BMS业务单据保存--结束"); return businessDocumentDomainService.insert(businessDocumentDO); } -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/application/server/settlementCustomers/SettlementCustomersApplicationService.java b/mhd_bms/src/main/java/com/mhd/bms/application/server/settlementCustomers/SettlementCustomersApplicationService.java index 24e92fceb..9371c55bc 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/application/server/settlementCustomers/SettlementCustomersApplicationService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/application/server/settlementCustomers/SettlementCustomersApplicationService.java @@ -4,7 +4,9 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.mhd.bms.domain.settlementCustomers.entity.SettlementCustomers; +import com.mhd.bms.domain.settlementCustomers.repository.mapper.SettlementCustomersMapper; import com.mhd.bms.domain.settlementCustomers.repository.po.SettlementCustomersPO; import com.mhd.bms.domain.settlementCustomers.repository.todo.SettlementCustomersDO; import com.mhd.bms.domain.settlementCustomers.service.SettlementCustomersDomainService; @@ -51,6 +53,8 @@ public class SettlementCustomersApplicationService { private SystemServiceFeign systemServiceFeign; @Autowired private UserServiceFeign userServiceFeign; + @Autowired + private SettlementCustomersMapper settlementCustomersMapper; /** @@ -283,7 +287,12 @@ public class SettlementCustomersApplicationService { saveEntity.setSettlementMethodCode("monthly_settle"); saveEntity.setMainRole(1); saveEntity.setCustomerTypeCode("customer"); //从货主同步过来的 默认客户 - saveEntity(saveEntity); + Long settlementEntityId = saveEntity.getSettlementEntityId(); + List settlementCustomers = settlementCustomersMapper.selectList(new LambdaQueryWrapper().eq(SettlementCustomers::getSettlementEntityId, settlementEntityId)); + if(settlementCustomers != null && settlementCustomers.size() > 0){ + } else { + saveEntity(saveEntity); + } }); } } @@ -309,7 +318,12 @@ public class SettlementCustomersApplicationService { saveEntity.setSettlementMethodCode("monthly_settle"); saveEntity.setMainRole(1); saveEntity.setCustomerTypeCode("customer"); - saveEntity(saveEntity); + Long settlementEntityId = saveEntity.getSettlementEntityId(); + List settlementCustomers = settlementCustomersMapper.selectList(new LambdaQueryWrapper().eq(SettlementCustomers::getSettlementEntityId, settlementEntityId)); + if(settlementCustomers != null && settlementCustomers.size() > 0){ + } else { + saveEntity(saveEntity); + } }); } } @@ -344,4 +358,4 @@ public class SettlementCustomersApplicationService { } return null; } -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java index 53021f493..b3d98f174 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/persistence/BillManageImpl.java @@ -220,7 +220,11 @@ public class BillManageImpl extends ServiceImpl im for (BmsMakeOutInvoiceItem item1 : bmsMakeOutInvoiceItems) { if(item1.getInvoiceValue().compareTo(BigDecimal.ZERO)>0){ Ysitem item=new Ysitem(); - item.setSo_deptid("NG0408"); + if (deptValue != null && !deptValue.isEmpty()) { + item.setSo_deptid(deptValue); + } else { + item.setSo_deptid("NG0408"); + } if (deptValue != null && !deptValue.isEmpty()) { item.setPk_deptid(deptValue); } else { @@ -478,7 +482,11 @@ public class BillManageImpl extends ServiceImpl im String settlementCurrencyNcCode = settlementCurrency; makerCodeNc=documentPreparerNcCode; SKitem item=new SKitem(); - item.setSo_deptid("NG0408"); + if (deptValue != null && !deptValue.isEmpty()) { + item.setSo_deptid(deptValue); + } else { + item.setSo_deptid("NG0408"); + } if (deptValue != null && !deptValue.isEmpty()) { item.setPk_deptid(deptValue); } else { diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/todo/BillManageDO.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/todo/BillManageDO.java index 2edb48101..c41235194 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/todo/BillManageDO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/todo/BillManageDO.java @@ -256,4 +256,9 @@ public class BillManageDO extends BaseVOEntity{ private Double taxRate; @ApiModelProperty("结算币种") private String settlementCurrency; + private String receivablePushTimeEnd; + private String receivablePushTimeStart; + private String paymentPushTimeEnd; + private String paymentPushTimeStart; + } \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billingRules/service/BillingParamsDomainService.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billingRules/service/BillingParamsDomainService.java index f053d8723..c62c6b364 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billingRules/service/BillingParamsDomainService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billingRules/service/BillingParamsDomainService.java @@ -1,6 +1,7 @@ package com.mhd.bms.domain.billingRules.service; import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.mhd.bms.domain.billingRules.entity.BillingParams; import com.mhd.bms.domain.billingRules.repository.facade.IBillingParamsService; import com.mhd.bms.domain.billingRules.repository.po.BillingParamsPO; @@ -121,7 +122,8 @@ public class BillingParamsDomainService { } billingParamsList.add(billingParams); } - return billingParamsService.saveOrUpdateBatch(billingParamsList); + billingParamsService.remove(new LambdaQueryWrapper().eq(BillingParams::getBillingRulesId, billingRulesDO.getBillingRulesId())); + return billingParamsService.saveBatch(billingParamsList); } @@ -136,4 +138,4 @@ public class BillingParamsDomainService { -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billingStatement/service/BillingStatementDomainService.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billingStatement/service/BillingStatementDomainService.java index e83666b87..4b35318fc 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billingStatement/service/BillingStatementDomainService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billingStatement/service/BillingStatementDomainService.java @@ -12,6 +12,7 @@ import com.mhd.bms.domain.billManage.repository.po.BillManagePO; import com.mhd.bms.domain.billManage.service.BillManageDomainService; import com.mhd.bms.domain.billingStatement.entity.BillingStatement; import com.mhd.bms.domain.billingStatement.repository.facade.IBillingStatementService; +import com.mhd.bms.domain.billingStatement.repository.po.BillingStatementADDVO; import com.mhd.bms.domain.billingStatement.repository.po.BillingStatementCollectPO; import com.mhd.bms.domain.billingStatement.repository.po.BillingStatementPO; import com.mhd.bms.domain.billingStatement.repository.todo.BillingStatementCollectDO; @@ -37,6 +38,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -265,7 +267,29 @@ public class BillingStatementDomainService { updateWrapper.set(BillingStatement::getUpdateTime,new Date()); updateWrapper.set(BillingStatement::getUpdateByName,loginUser.getUserPo().getUserName()); updateWrapper.set(BillingStatement::getBillManageId,billingStatementDTO.getBillManageId()); - return billingStatementService.update(updateWrapper); + boolean update = billingStatementService.update(updateWrapper); + List billingStatementList = billingStatementDTO.getBillingStatementList(); + for (BillingStatementADDVO billingStatementADDVO : billingStatementList) { + String billingStatementIds = billingStatementADDVO.getBillingStatementId(); + Set billings = Stream.of(billingStatementIds.split(",")).collect(Collectors.toSet()); + if (billings != null && billings.size() > 0) { + for (String billing : billings) { + Long billingStatementId = Long.valueOf(billing); + Double taxRate = billingStatementADDVO.getTaxRate(); + BillingStatement billingStatement = billingStatementService.getById(billingStatementId); + if (billingStatement != null) { + BigDecimal billingAmount = billingStatement.getBillingAmount(); + BigDecimal taxAmount = billingAmount.divide(BigDecimal.ONE.add(new BigDecimal(taxRate).divide(BigDecimal.valueOf(100))),10, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(taxRate).divide(BigDecimal.valueOf(100))).setScale(2, BigDecimal.ROUND_HALF_UP); + BigDecimal taxFreeFee = billingAmount.subtract(taxAmount); + billingStatement.setTaxAmount(taxAmount); + billingStatement.setTaxFreeFee(taxFreeFee); + billingStatement.setTaxRate(taxRate); + billingStatementService.updateById(billingStatement); + } + } + } + } + return update; } @@ -390,6 +414,14 @@ public class BillingStatementDomainService { billingStatementDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); billingStatementDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); billingStatementDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); + + BigDecimal billingAmount = billingStatementDO.getBillingAmount(); + Double taxRate = billingStatementDO.getTaxRate() != null ? billingStatementDO.getTaxRate() : 0.0; + BigDecimal taxAmount = billingAmount.divide(BigDecimal.ONE.add(new BigDecimal(taxRate).divide(BigDecimal.valueOf(100))),10, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(taxRate).divide(BigDecimal.valueOf(100))).setScale(2, BigDecimal.ROUND_HALF_UP); + BigDecimal taxFreeFee = billingAmount.subtract(taxAmount); + billingStatementDO.setTaxAmount(taxAmount); + billingStatementDO.setTaxFreeFee(taxFreeFee); + //处理数据 handleData(billingStatementDO); return this.insert(billingStatementDO); diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/bmsInvoiceList/repository/todo/BmsInvoiceListQueryDTO.java b/mhd_bms/src/main/java/com/mhd/bms/domain/bmsInvoiceList/repository/todo/BmsInvoiceListQueryDTO.java index aea81110e..2abaeb7de 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/bmsInvoiceList/repository/todo/BmsInvoiceListQueryDTO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/bmsInvoiceList/repository/todo/BmsInvoiceListQueryDTO.java @@ -138,4 +138,5 @@ public class BmsInvoiceListQueryDTO implements Serializable { @ApiModelProperty(value = "一级组织ID") private Long topOrganizationId; + private String billNumber; } \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/entity/BusinessDocument.java b/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/entity/BusinessDocument.java index 837c51595..3cbddbeda 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/entity/BusinessDocument.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/entity/BusinessDocument.java @@ -176,5 +176,6 @@ public class BusinessDocument extends BaseVOEntity{ private String salesmanId; @ApiModelProperty("业务员名称") private String salesmanName; - + @ApiModelProperty("税率") + private String taxRate; } \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/po/BusinessDocumentPO.java b/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/po/BusinessDocumentPO.java index 33eb7ca76..85ebcf84c 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/po/BusinessDocumentPO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/po/BusinessDocumentPO.java @@ -181,4 +181,6 @@ public class BusinessDocumentPO extends BaseVOEntity{ private String salesmanId; @ApiModelProperty("业务员名称") private String salesmanName; + @ApiModelProperty("税率") + private String taxRate; } \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/todo/BusinessDocumentDO.java b/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/todo/BusinessDocumentDO.java index 06627e5ed..835a9d309 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/todo/BusinessDocumentDO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/businessDocument/repository/todo/BusinessDocumentDO.java @@ -201,4 +201,6 @@ public class BusinessDocumentDO extends BaseVOEntity{ private String salesmanId; @ApiModelProperty("业务员名称") private String salesmanName; + @ApiModelProperty("税率") + private String taxRate; } \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/entity/PaymentWallet.java b/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/entity/PaymentWallet.java index ef10d640a..6989dd459 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/entity/PaymentWallet.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/entity/PaymentWallet.java @@ -58,6 +58,10 @@ public class PaymentWallet extends BaseVOEntity{ @Excel(name = "手机号") private String phone; + @ApiModelProperty("银行卡号") + @Excel(name = "银行卡号") + private String bankCardNo; + @ApiModelProperty("支付方式编码") @Excel(name = "支付方式编码") private String paymentMethodCode; @@ -71,4 +75,4 @@ public class PaymentWallet extends BaseVOEntity{ private Long paymentManageId; -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/po/PaymentWalletPO.java b/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/po/PaymentWalletPO.java index 62a440865..e73206a18 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/po/PaymentWalletPO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/po/PaymentWalletPO.java @@ -57,6 +57,10 @@ public class PaymentWalletPO extends BaseVOEntity{ @Excel(name = "手机号") private String phone; + @ApiModelProperty("银行卡号") + @Excel(name = "银行卡号") + private String bankCardNo; + @ApiModelProperty("支付方式编码") @Excel(name = "支付方式编码") private String paymentMethodCode; @@ -71,4 +75,4 @@ public class PaymentWalletPO extends BaseVOEntity{ -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/todo/PaymentWalletDO.java b/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/todo/PaymentWalletDO.java index 1968dacf9..fe6f9d230 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/todo/PaymentWalletDO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/paymentWallet/repository/todo/PaymentWalletDO.java @@ -57,6 +57,10 @@ public class PaymentWalletDO extends BaseVOEntity{ @Excel(name = "手机号") private String phone; + @ApiModelProperty("银行卡号") + @Excel(name = "银行卡号") + private String bankCardNo; + @ApiModelProperty("支付方式编码") @Excel(name = "支付方式编码") private String paymentMethodCode; @@ -74,4 +78,4 @@ public class PaymentWalletDO extends BaseVOEntity{ @ApiModelProperty(name = "权限菜单ID") private Long permissionMenuId; -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/billManage/BillManageDTO.java b/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/billManage/BillManageDTO.java index fd2a942f6..72f9b9a5c 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/billManage/BillManageDTO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/billManage/BillManageDTO.java @@ -267,4 +267,9 @@ public class BillManageDTO extends BaseVOEntity{ @ApiModelProperty("业务员ID") private String salesmanName; + + private String receivablePushTimeEnd; + private String receivablePushTimeStart; + private String paymentPushTimeEnd; + private String paymentPushTimeStart; } \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/businessDocument/BusinessDocumentDTO.java b/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/businessDocument/BusinessDocumentDTO.java index 9fe8bdee5..57d710bc5 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/businessDocument/BusinessDocumentDTO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/businessDocument/BusinessDocumentDTO.java @@ -207,4 +207,6 @@ public class BusinessDocumentDTO extends BaseVOEntity{ private String salesmanId; @ApiModelProperty("业务员名称") private String salesmanName; + @ApiModelProperty("税率") + private String taxRate; } \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/paymentWallet/PaymentWalletDTO.java b/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/paymentWallet/PaymentWalletDTO.java index 048447fb8..1d3e69d08 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/paymentWallet/PaymentWalletDTO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/interfaces/dto/paymentWallet/PaymentWalletDTO.java @@ -56,6 +56,10 @@ public class PaymentWalletDTO extends BaseVOEntity{ @Excel(name = "手机号") private String phone; + @ApiModelProperty("银行卡号") + @Excel(name = "银行卡号") + private String bankCardNo; + @ApiModelProperty("支付方式编码") @Excel(name = "支付方式编码") private String paymentMethodCode; @@ -77,4 +81,4 @@ public class PaymentWalletDTO extends BaseVOEntity{ @ApiModelProperty(name = "权限菜单ID") private Long permissionMenuId; -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/resources/mapper/BillManageMapper.xml b/mhd_bms/src/main/resources/mapper/BillManageMapper.xml index d7664bc8e..6e58ffd42 100644 --- a/mhd_bms/src/main/resources/mapper/BillManageMapper.xml +++ b/mhd_bms/src/main/resources/mapper/BillManageMapper.xml @@ -22,6 +22,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND date_format(a.create_time,'%Y-%m-%d') #{billManageDO.createTimeEnd} + + + AND date_format(a.SK_SYNCHRONOUS_TIME,'%Y-%m-%d') =]]> #{billManageDO.paymentPushTimeStart} + + + AND date_format(a.SK_SYNCHRONOUS_TIME,'%Y-%m-%d') #{billManageDO.paymentPushTimeEnd} + + + AND date_format(a.SYNCHRONOUS_TIME,'%Y-%m-%d') =]]> #{billManageDO.receivablePushTimeStart} + + + AND date_format(a.SYNCHRONOUS_TIME,'%Y-%m-%d') #{billManageDO.receivablePushTimeEnd} + + AND a.create_by_name like concat('%', #{billManageDO.createByName}, '%') @@ -58,6 +72,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND a.reconciliation_status = #{billManageDO.reconciliationStatus} + + AND a.apply_number = #{billManageDO.applyNumber} + + + AND a.settlement_currency = #{billManageDO.settlementCurrency} + + + AND a.sk_synchronous_status = #{billManageDO.skSynchronousStatus} + + + AND a.synchronous_status = #{billManageDO.synchronousStatus} + AND a.bill_type = #{billManageDO.billType} diff --git a/mhd_bms/src/main/resources/mapper/BmsInvoiceListMapper.xml b/mhd_bms/src/main/resources/mapper/BmsInvoiceListMapper.xml index 42b7770ab..178bbda02 100644 --- a/mhd_bms/src/main/resources/mapper/BmsInvoiceListMapper.xml +++ b/mhd_bms/src/main/resources/mapper/BmsInvoiceListMapper.xml @@ -35,6 +35,7 @@ and a.id = #{bmsInvoiceListQueryDTO.id} + and b.bill_number = #{bmsInvoiceListQueryDTO.billNumber} and instr(a.id ,#{bmsInvoiceListQueryDTO.id}) > 0 and instr(a.invoice_state ,#{bmsInvoiceListQueryDTO.invoiceState}) > 0 diff --git a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java index be126cbfc..7cac4240d 100644 --- a/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java +++ b/mhd_finance/src/main/java/com/linke/finance/domain/reconciliation/repository/persistence/ReconciliationImpl.java @@ -706,7 +706,11 @@ public class ReconciliationImpl extends ServiceImpl0){ Ysitem item=new Ysitem(); - item.setSo_deptid("NG0408"); + if (deptValue != null && !deptValue.isEmpty()) { + item.setSo_deptid(deptValue); + } else { + item.setSo_deptid("NG0408"); + } if (deptValue != null && !deptValue.isEmpty()) { item.setPk_deptid(deptValue); } else { @@ -1161,7 +1165,11 @@ public class ReconciliationImpl extends ServiceImpl ids = pickingMaterialDetailMapper.selectOutUniqueIdsWithPickingByOutOrderNumber(orderNumber); outUniqueIdsWithPicking = ids != null ? new java.util.HashSet<>(ids) : java.util.Collections.emptySet(); } - // 需要复核时:与复核单一致,仅取 level=1 父级(复核单只展示父级,子级挂在父级下) LambdaQueryWrapper omdQuery = new QueryWrapper().lambda() .eq(OutMaterialDetail::getOutOrderNumber, orderNumber) .eq(OutMaterialDetail::getDelFlag, 1); - if (Integer.valueOf(1).equals(review)) { - omdQuery.eq(OutMaterialDetail::getLevel, 1); - } List outMaterialDetailList = outMaterialDetailMapper.selectList(omdQuery); List materialDetailList = new ArrayList<>(); for (OutMaterialDetail omd : outMaterialDetailList) { diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java index 3badbb476..df7a003d1 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java @@ -307,6 +307,9 @@ public class StockShelfOrderDomainService { throw new ServiceException("上架单【" + stockShelfOrderPO.getShelfOrderNumber() + "】数据已被更新,请刷新后重新进行上架"); } //上架保存容器使用记录 + if (CollectionUtils.isEmpty(stockShelfOrderDO.getMaterialDetailList())) { + throw new ServiceException("上架数量不能为空,请填写上架数量后再提交"); + } genContainerUsageRecord(stockShelfOrderDO); //修改物料明细信息 shelfMaterialDetailService.batchShelfUpdate(stockShelfOrderDO); @@ -1233,7 +1236,8 @@ public class StockShelfOrderDomainService { public void genContainerUsageRecord(StockShelfOrderDO stockShelfOrderDO) { List shelfMaterialDetailDOList = stockShelfOrderDO.getMaterialDetailList(); if (CollectionUtils.isEmpty(shelfMaterialDetailDOList)) { - throw new ServiceException("物料明细不能为空"); + // 无需处理的明细(上架数量全为0时跳过),直接返回 + return; } //所有明细 List listShelfMaterialDetail = shelfMaterialDetailService.list(new QueryWrapper().lambda().eq(ShelfMaterialDetail::getShelfOrderNumber, stockShelfOrderDO.getShelfOrderNumber())); diff --git a/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml b/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml index ad2e8b8e4..06f861845 100644 --- a/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml +++ b/mhd_wms/src/main/resources/mapper/pickingMaterialDetail/PickingMaterialDetailMapper.xml @@ -191,11 +191,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" @@ -240,22 +240,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalNetWeight}, total_net_weight) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalNetWeight}, total_net_weight) - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalGrossWeight}, total_gross_weight) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalGrossWeight}, total_gross_weight) - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalVolume}, total_volume) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalVolume}, total_volume) - WHEN #{item.uniqueId} THEN IFNULL(#{item.totalArea}, total_area) + WHEN #{item.uniqueId} THEN COALESCE(#{item.totalArea}, total_area) update_by = #{updateBy},