From fbecd9d970bad83ab776427e575c30801c2cb554 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Thu, 26 Feb 2026 11:44:08 +0800 Subject: [PATCH] =?UTF-8?q?bms=E5=BA=94=E6=94=B6=E8=B4=A6=E5=8D=95?= =?UTF-8?q?=E5=8F=91=E7=A5=A8=E5=8F=8Anc=E7=9B=B8=E5=85=B3=E4=BF=AE?= =?UTF-8?q?=E6=94=B9;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BillManageApplicationService.java | 9 +++- .../domain/billManage/entity/BillManage.java | 44 ++++++++++++++++- .../repository/facade/IBillManageService.java | 4 +- .../persistence/BillManageImpl.java | 49 ++++++++++++++++++- .../repository/po/BillManagePO.java | 44 ++++++++++++++++- .../repository/todo/BillManageDO.java | 44 ++++++++++++++++- .../service/BillManageDomainService.java | 8 ++- .../dto/billManage/BillManageDTO.java | 44 ++++++++++++++++- .../interfaces/facadeApi/BillManageApi.java | 29 ++++++++--- 9 files changed, 259 insertions(+), 16 deletions(-) diff --git a/mhd_bms/src/main/java/com/mhd/bms/application/server/billManage/BillManageApplicationService.java b/mhd_bms/src/main/java/com/mhd/bms/application/server/billManage/BillManageApplicationService.java index a141ccd3d..55eb16375 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/application/server/billManage/BillManageApplicationService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/application/server/billManage/BillManageApplicationService.java @@ -265,6 +265,13 @@ public class BillManageApplicationService { return billManageDomainService.confirmBilling(billManageDO); } + + public int editIsInvoice(String billNumber, Integer isInvoice, String invoiceId, String invoiceMakeTime,String applyNumber) + { + return billManageDomainService.editIsInvoice(billNumber,isInvoice,invoiceId,invoiceMakeTime,applyNumber); + } + + /** * 查询对账详情 */ @@ -529,4 +536,4 @@ public class BillManageApplicationService { -} +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/entity/BillManage.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/entity/BillManage.java index 08d4e0691..456267ccd 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/entity/BillManage.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/entity/BillManage.java @@ -9,6 +9,7 @@ import java.math.BigDecimal; import lombok.Data; import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; /** @@ -183,4 +184,45 @@ public class BillManage extends BaseVOEntity{ @ApiModelProperty("结算单优惠金额") private BigDecimal settlementDiscountsAmount; -} + + @ApiModelProperty(value = "运单发票开具状态(0-未索取,1-已索取,2-已开票,3-部分索取)") + private Integer isInvoice; + + + @ApiModelProperty(value = "发票表ID") + private String invoiceId; + + @ApiModelProperty(value = "开票时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date invoiceMakeTime; + + + @ApiModelProperty(value = "申请发票单号") + private String applyNumber; + + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer synchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date synchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String ncId; + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer skSynchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date skSynchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String skNcId; +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/facade/IBillManageService.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/facade/IBillManageService.java index 7320eaa64..86fb377e2 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/facade/IBillManageService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/facade/IBillManageService.java @@ -40,4 +40,6 @@ public interface IBillManageService extends IService * 查询账单管理 */ public BillManagePO getInfo(Long billManageId); -} + + public int editIsInvoice(String billNumber, Integer isInvoice, String invoiceId, String invoiceMakeTime,String applyNumber); +} \ 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 3f54433ef..9a43ec743 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 @@ -1,5 +1,7 @@ package com.mhd.bms.domain.billManage.repository.persistence; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mhd.bms.domain.billManage.entity.BillManage; import com.mhd.bms.domain.billManage.repository.facade.IBillManageService; @@ -10,6 +12,8 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.List; @@ -78,4 +82,47 @@ public class BillManageImpl extends ServiceImpl im BeanUtils.copyProperties(billManage,billManagePO); return billManagePO; } -} + + @Override + public int editIsInvoice(String billNumber, Integer isInvoice, String invoiceId, String invoiceMakeTime,String applyNumber) { + if(org.apache.commons.lang3.StringUtils.isNotBlank(billNumber)){ + BillManage billManage= billManageMapper.selectOne(new QueryWrapper().lambda() + .eq(BillManage::getBillNumber,billNumber) + .eq(BillManage::getDelFlag,1)); + if(ObjectUtil.isNotNull(billManage)){ + billManage.setIsInvoice(isInvoice); + billManage.setInvoiceId(invoiceId); + billManage.setApplyNumber(applyNumber); + if(org.apache.commons.lang3.StringUtils.isNotBlank(invoiceMakeTime)){ + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + billManage.setInvoiceMakeTime(formatter.parse(invoiceMakeTime)); + } catch (ParseException e) { + e.printStackTrace(); + } + } + return billManageMapper.updateById(billManage); + } + }else if(org.apache.commons.lang3.StringUtils.isNotBlank(invoiceId)){ + BillManage billManage= billManageMapper.selectOne(new QueryWrapper().lambda() + .eq(BillManage::getInvoiceId,invoiceId) + .eq(BillManage::getDelFlag,1)); + if(ObjectUtil.isNotNull(billManage)){ + billManage.setIsInvoice(isInvoice); + billManage.setInvoiceId(invoiceId); + billManage.setApplyNumber(applyNumber); + if(org.apache.commons.lang3.StringUtils.isNotBlank(invoiceMakeTime)){ + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + billManage.setInvoiceMakeTime(formatter.parse(invoiceMakeTime)); + } catch (ParseException e) { + e.printStackTrace(); + } + } + return billManageMapper.updateById(billManage); + } + } + + return 0; + } +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/po/BillManagePO.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/po/BillManagePO.java index 938556f17..aedc20879 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/po/BillManagePO.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/repository/po/BillManagePO.java @@ -11,6 +11,7 @@ import java.math.BigDecimal; import java.util.List; import com.mhd.common.core.web.domain.BaseVOEntity; +import org.springframework.format.annotation.DateTimeFormat; /** @@ -194,4 +195,45 @@ public class BillManagePO extends BaseVOEntity{ @ApiModelProperty("流水ids") private String billingStatementIds; -} + + @ApiModelProperty(value = "运单发票开具状态(0-未索取,1-已索取,2-已开票,3-部分索取)") + private Integer isInvoice; + + + @ApiModelProperty(value = "发票表ID") + private String invoiceId; + + @ApiModelProperty(value = "开票时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date invoiceMakeTime; + + + @ApiModelProperty(value = "申请发票单号") + private String applyNumber; + + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer synchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date synchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String ncId; + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer skSynchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date skSynchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String skNcId; +} \ No newline at end of file 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 3bd8d7858..89d749056 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 @@ -7,6 +7,7 @@ import com.fasterxml.jackson.annotation.JsonFormat; import java.math.BigDecimal; import io.swagger.annotations.ApiModelProperty; import com.mhd.common.core.web.domain.BaseVOEntity; +import org.springframework.format.annotation.DateTimeFormat; import java.util.List; import java.util.Set; @@ -205,4 +206,45 @@ public class BillManageDO extends BaseVOEntity{ @ApiModelProperty("结算单优惠金额") private BigDecimal settlementDiscountsAmount; -} + + @ApiModelProperty(value = "运单发票开具状态(0-未索取,1-已索取,2-已开票,3-部分索取)") + private Integer isInvoice; + + + @ApiModelProperty(value = "发票表ID") + private String invoiceId; + + @ApiModelProperty(value = "开票时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date invoiceMakeTime; + + + @ApiModelProperty(value = "申请发票单号") + private String applyNumber; + + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer synchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date synchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String ncId; + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer skSynchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date skSynchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String skNcId; +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/service/BillManageDomainService.java b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/service/BillManageDomainService.java index 65150c8ba..39d7b759f 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/service/BillManageDomainService.java +++ b/mhd_bms/src/main/java/com/mhd/bms/domain/billManage/service/BillManageDomainService.java @@ -297,6 +297,12 @@ public class BillManageDomainService { return flag && three; } + + public int editIsInvoice(String billNumber, Integer isInvoice, String invoiceId, String invoiceMakeTime,String applyNumber) + { + return billManageService.editIsInvoice(billNumber,isInvoice,invoiceId,invoiceMakeTime,applyNumber); + } + /** * 处理数据 */ @@ -503,4 +509,4 @@ public class BillManageDomainService { public List billAnalysisList(QueryWrapper queryWrapper) { return billManageService.list(queryWrapper); } -} +} \ 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 7cb79e109..ac4b7be25 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 @@ -8,6 +8,7 @@ import com.fasterxml.jackson.annotation.JsonFormat; import java.math.BigDecimal; import io.swagger.annotations.ApiModelProperty; import com.mhd.common.core.web.domain.BaseVOEntity; +import org.springframework.format.annotation.DateTimeFormat; import java.util.List; import java.util.Set; @@ -211,4 +212,45 @@ public class BillManageDTO extends BaseVOEntity{ @ApiModelProperty("结算单优惠金额") private BigDecimal settlementDiscountsAmount; -} + + @ApiModelProperty(value = "运单发票开具状态(0-未索取,1-已索取,2-已开票,3-部分索取)") + private Integer isInvoice; + + + @ApiModelProperty(value = "发票表ID") + private String invoiceId; + + @ApiModelProperty(value = "开票时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date invoiceMakeTime; + + + @ApiModelProperty(value = "申请发票单号") + private String applyNumber; + + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer synchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date synchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String ncId; + + @ApiModelProperty("nc同步状态 0-未同步 1-已同步") + private Integer skSynchronousStatus; + + + @ApiModelProperty(value = "nc同步时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private java.util.Date skSynchronousTime; + + @ApiModelProperty(value = "nc唯一标识") + private String skNcId; +} \ No newline at end of file diff --git a/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BillManageApi.java b/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BillManageApi.java index 5b161eafe..a40d553e7 100644 --- a/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BillManageApi.java +++ b/mhd_bms/src/main/java/com/mhd/bms/interfaces/facadeApi/BillManageApi.java @@ -13,6 +13,8 @@ import com.mhd.bms.domain.billingStatement.repository.todo.BillingStatementDO; import com.mhd.bms.infrastructure.utils.UniqueKeyUtil; import com.mhd.bms.interfaces.dto.billingStatement.BillingStatementDTO; import com.mhd.common.core.exception.ServiceException; +import com.mhd.common.log.annotation.Log; +import com.mhd.common.log.enums.BusinessType; import com.mhd.common.redis.enums.RedisLockTypeEnum; import com.mhd.common.redis.service.RedisLock; import io.swagger.annotations.ApiOperation; @@ -22,13 +24,7 @@ import org.redisson.api.RLock; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.mhd.bms.interfaces.dto.billManage.BillManageDTO; import com.mhd.bms.domain.billManage.repository.todo.BillManageDO; import com.mhd.bms.domain.billManage.repository.po.BillManagePO; @@ -157,6 +153,23 @@ public class BillManageApi extends BaseController{ } } + /** + * 发票开票修改对账单的开票状态 + */ + @Log(title = "对账单", description = "开票修改对账单的开票状态)", businessType = BusinessType.OTHER) + @ApiOperation("开票修改对账单的开票状态") + @GetMapping("/editIsInvoice") + public AjaxResult editIsInvoice(@RequestParam(name="billNumber") String billNumber, + @RequestParam(name="isInvoice") Integer isInvoice, + @RequestParam(name="invoiceId") String invoiceId, + @RequestParam(name="invoiceMakeTime") String invoiceMakeTime, + @RequestParam(name="applyNumber") String applyNumber) + { + + billManageApplicationService.editIsInvoice(billNumber,isInvoice,invoiceId,invoiceMakeTime,applyNumber); + return AjaxResult.success("发票开票修改对账单的开票状态成功"); + } + /** @@ -281,4 +294,4 @@ public class BillManageApi extends BaseController{ -} +} \ No newline at end of file