bms应收账单发票及nc相关修改;

This commit is contained in:
王奎兴
2026-02-26 11:44:08 +08:00
parent ec4e20fbe7
commit fbecd9d970
9 changed files with 259 additions and 16 deletions
@@ -265,6 +265,13 @@ public class BillManageApplicationService {
return billManageDomainService.confirmBilling(billManageDO); 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);
}
/** /**
* 查询对账详情 * 查询对账详情
*/ */
@@ -9,6 +9,7 @@ import java.math.BigDecimal;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
/** /**
@@ -183,4 +184,45 @@ public class BillManage extends BaseVOEntity{
@ApiModelProperty("结算单优惠金额") @ApiModelProperty("结算单优惠金额")
private BigDecimal settlementDiscountsAmount; 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;
} }
@@ -40,4 +40,6 @@ public interface IBillManageService extends IService<BillManage>
* 查询账单管理 * 查询账单管理
*/ */
public BillManagePO getInfo(Long billManageId); public BillManagePO getInfo(Long billManageId);
public int editIsInvoice(String billNumber, Integer isInvoice, String invoiceId, String invoiceMakeTime,String applyNumber);
} }
@@ -1,5 +1,7 @@
package com.mhd.bms.domain.billManage.repository.persistence; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mhd.bms.domain.billManage.entity.BillManage; import com.mhd.bms.domain.billManage.entity.BillManage;
import com.mhd.bms.domain.billManage.repository.facade.IBillManageService; 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.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -78,4 +82,47 @@ public class BillManageImpl extends ServiceImpl<BillManageMapper, BillManage> im
BeanUtils.copyProperties(billManage,billManagePO); BeanUtils.copyProperties(billManage,billManagePO);
return 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<BillManage>().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<BillManage>().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;
}
} }
@@ -11,6 +11,7 @@ import java.math.BigDecimal;
import java.util.List; import java.util.List;
import com.mhd.common.core.web.domain.BaseVOEntity; 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") @ApiModelProperty("流水ids")
private String billingStatementIds; 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;
} }
@@ -7,6 +7,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import com.mhd.common.core.web.domain.BaseVOEntity; import com.mhd.common.core.web.domain.BaseVOEntity;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
@@ -205,4 +206,45 @@ public class BillManageDO extends BaseVOEntity{
@ApiModelProperty("结算单优惠金额") @ApiModelProperty("结算单优惠金额")
private BigDecimal settlementDiscountsAmount; 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;
} }
@@ -297,6 +297,12 @@ public class BillManageDomainService {
return flag && three; return flag && three;
} }
public int editIsInvoice(String billNumber, Integer isInvoice, String invoiceId, String invoiceMakeTime,String applyNumber)
{
return billManageService.editIsInvoice(billNumber,isInvoice,invoiceId,invoiceMakeTime,applyNumber);
}
/** /**
* 处理数据 * 处理数据
*/ */
@@ -8,6 +8,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import com.mhd.common.core.web.domain.BaseVOEntity; import com.mhd.common.core.web.domain.BaseVOEntity;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
@@ -211,4 +212,45 @@ public class BillManageDTO extends BaseVOEntity{
@ApiModelProperty("结算单优惠金额") @ApiModelProperty("结算单优惠金额")
private BigDecimal settlementDiscountsAmount; 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;
} }
@@ -13,6 +13,8 @@ import com.mhd.bms.domain.billingStatement.repository.todo.BillingStatementDO;
import com.mhd.bms.infrastructure.utils.UniqueKeyUtil; import com.mhd.bms.infrastructure.utils.UniqueKeyUtil;
import com.mhd.bms.interfaces.dto.billingStatement.BillingStatementDTO; import com.mhd.bms.interfaces.dto.billingStatement.BillingStatementDTO;
import com.mhd.common.core.exception.ServiceException; 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.enums.RedisLockTypeEnum;
import com.mhd.common.redis.service.RedisLock; import com.mhd.common.redis.service.RedisLock;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@@ -22,13 +24,7 @@ import org.redisson.api.RLock;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
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 com.mhd.bms.interfaces.dto.billManage.BillManageDTO; import com.mhd.bms.interfaces.dto.billManage.BillManageDTO;
import com.mhd.bms.domain.billManage.repository.todo.BillManageDO; import com.mhd.bms.domain.billManage.repository.todo.BillManageDO;
import com.mhd.bms.domain.billManage.repository.po.BillManagePO; 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("发票开票修改对账单的开票状态成功");
}
/** /**