应收账单保存科目信息和nc推送修改
This commit is contained in:
+5
-7
@@ -1,13 +1,11 @@
|
||||
package com.linke.finance.interfaces.dto.reconciliationAccount;
|
||||
package com.mhd.common.core.domain.dto;
|
||||
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import java.math.BigDecimal;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -42,7 +40,7 @@ public class ReconciliationAccountDTO extends BaseVOEntity{
|
||||
|
||||
@ApiModelProperty("应收账单id")
|
||||
@Excel(name = "应收账单id")
|
||||
private String reconciliationId;
|
||||
private Long reconciliationId;
|
||||
|
||||
@ApiModelProperty("科目id")
|
||||
@Excel(name = "科目id")
|
||||
+3
@@ -233,4 +233,7 @@ public class ReconciliationDTO extends BaseVOEntity{
|
||||
@ApiModelProperty("nc同步状态 0-未同步 1-已同步")
|
||||
private Integer skSynchronousStatus;
|
||||
|
||||
@ApiModelProperty(value = "账单科目明细")
|
||||
public List<ReconciliationAccountDTO> reconciliationAccountDTOList;
|
||||
|
||||
}
|
||||
|
||||
+25
-1
@@ -1,5 +1,6 @@
|
||||
package com.linke.finance.application.server.reconciliation;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.aliyun.dingtalkworkflow_1_0.models.StartProcessInstanceResponse;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -13,6 +14,9 @@ import com.linke.finance.domain.reconciliation.repository.po.ReconciliationOrder
|
||||
import com.linke.finance.domain.reconciliation.repository.po.ReconciliationPO;
|
||||
import com.linke.finance.domain.reconciliation.repository.todo.ReconciliationDO;
|
||||
import com.linke.finance.domain.reconciliation.service.ReconciliationDomainService;
|
||||
import com.linke.finance.domain.reconciliationAccount.entity.ReconciliationAccount;
|
||||
import com.linke.finance.domain.reconciliationAccount.repository.todo.ReconciliationAccountDO;
|
||||
import com.linke.finance.domain.reconciliationAccount.service.ReconciliationAccountDomainService;
|
||||
import com.linke.finance.domain.revenueExpensesRecord.entity.RevenueExpensesRecord;
|
||||
import com.linke.finance.domain.revenueExpensesRecord.service.RevenueExpensesRecordDomainService;
|
||||
import com.linke.finance.domain.tmsReceipt.repository.mapper.TmsReceiptMapper;
|
||||
@@ -21,7 +25,9 @@ import com.linke.finance.domain.tmsReceipt.service.TmsReceiptDomainService;
|
||||
import com.linke.finance.domain.verification.service.VerificationDomainService;
|
||||
import com.linke.finance.infrastructure.feign.ProductServiceFeign;
|
||||
import com.linke.finance.infrastructure.feign.WlhyServiceFeign;
|
||||
import com.linke.finance.interfaces.assembler.reconciliationAccount.ReconciliationAccountAssembler;
|
||||
import com.mhd.common.core.constant.SubjectConstants;
|
||||
import com.mhd.common.core.domain.dto.ReconciliationAccountDTO;
|
||||
import com.mhd.common.core.domain.dto.ReconciliationDTO;
|
||||
import com.mhd.common.core.domain.entity.TmsOrder;
|
||||
import com.mhd.common.core.domain.entity.Verification;
|
||||
@@ -75,7 +81,11 @@ public class ReconciliationApplicationService {
|
||||
@Resource
|
||||
private TmsReceiptMapper tmsReceiptMapper;
|
||||
|
||||
@Autowired
|
||||
private ReconciliationAccountDomainService reconciliationAccountDomainService;
|
||||
|
||||
@Resource
|
||||
private ReconciliationAccountAssembler reconciliationAccountAssembler;
|
||||
|
||||
/**
|
||||
* 分页查询对账单列表
|
||||
@@ -327,6 +337,20 @@ public class ReconciliationApplicationService {
|
||||
if(!flag){
|
||||
throw new ServiceException("订单出账-生成应收账单明细失败!");
|
||||
}
|
||||
List<ReconciliationAccountDTO> reconciliationAccountDTOList=reconciliationDO.getReconciliationAccountDTOList();
|
||||
if(ObjectUtil.isNotNull(reconciliationAccountDTOList)&&reconciliationAccountDTOList.size()>0){
|
||||
for (ReconciliationAccountDTO reconciliationAccountDTO:reconciliationAccountDTOList){
|
||||
reconciliationAccountDTO.setReconciliationId(reconciliationDO.getReconciliationId());
|
||||
reconciliationAccountDTO.setDelFlag(1);
|
||||
reconciliationAccountDTO.setCreateTime(new Date());
|
||||
reconciliationAccountDTO.setCreateBy(loginUser.getUserid());
|
||||
reconciliationAccountDTO.setOrganizationId(reconciliationDO.getOrganizationId());
|
||||
reconciliationAccountDTO.setTopOrganizationId(reconciliationDO.getTopOrganizationId());
|
||||
//转换实体
|
||||
ReconciliationAccountDO reconciliationAccountDO = reconciliationAccountAssembler.toDO(reconciliationAccountDTO);
|
||||
reconciliationAccountDomainService.insert(reconciliationAccountDO);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -715,4 +739,4 @@ public class ReconciliationApplicationService {
|
||||
{
|
||||
return reconciliationDomainService.editIsInvoice(innerNumber,isInvoice,invoiceId,invoiceMakeTime,applyNumber);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+52
-37
@@ -22,6 +22,8 @@ import com.linke.finance.domain.reconciliation.repository.facade.IReconciliation
|
||||
import com.linke.finance.domain.reconciliation.repository.mapper.ReconciliationMapper;
|
||||
import com.linke.finance.domain.reconciliation.repository.po.ReconciliationPO;
|
||||
import com.linke.finance.domain.reconciliation.repository.todo.ReconciliationDO;
|
||||
import com.linke.finance.domain.reconciliationAccount.entity.ReconciliationAccount;
|
||||
import com.linke.finance.domain.reconciliationAccount.repository.mapper.ReconciliationAccountMapper;
|
||||
import com.mhd.common.core.domain.dto.ReconciliationDTO;
|
||||
import com.mhd.common.core.domain.dto.nc.*;
|
||||
import com.mhd.common.core.domain.entity.R;
|
||||
@@ -96,6 +98,8 @@ public class ReconciliationImpl extends ServiceImpl<ReconciliationMapper, Reconc
|
||||
private ApprovalDocumentMapper approvalDocumentMapper;
|
||||
@Autowired
|
||||
private ApprovalDocumentDomainService approvalDocumentDomainService;
|
||||
@Autowired
|
||||
private ReconciliationAccountMapper reconciliationAccountMapper;
|
||||
//nc测试环境地址
|
||||
private String url="http://10.0.0.212/service/XChangeServlet?account=NKNC&groupcode=CNK";
|
||||
|
||||
@@ -604,6 +608,12 @@ public class ReconciliationImpl extends ServiceImpl<ReconciliationMapper, Reconc
|
||||
if(result.getCode()==200){
|
||||
List<TmsOrder> list=result.getData();
|
||||
if(ObjectUtil.isNotNull(list)){
|
||||
makerCodeNc=list.get(0).getMakerCodeNc();
|
||||
String salesmanCodeNc=list.get(0).getSalesmanCodeNc();
|
||||
String customerCodeNc=list.get(0).getCustomerCodeNc();
|
||||
String appointShipper=list.get(0).getAppointShipper();
|
||||
String settlementCurrency=list.get(0).getSettlementCurrency();
|
||||
String goodsNumber=list.get(0).getGoodsName();
|
||||
for(TmsOrder tmsOrder:list){
|
||||
R<TmsTransportNote> ajaxResult1=wlhyServiceFeign.selectByOrderNum(tmsOrder.getGoodsNumber());
|
||||
if(ajaxResult1.getCode()==200){
|
||||
@@ -623,45 +633,50 @@ public class ReconciliationImpl extends ServiceImpl<ReconciliationMapper, Reconc
|
||||
}
|
||||
|
||||
}
|
||||
/* if(null==reconciliation.getSettlementPartyId()){
|
||||
throw new ServiceException("没有结算方,请核对");
|
||||
}*/
|
||||
/* if (org.apache.commons.lang.StringUtils.isBlank(tmsOrder.getSalesmanCodeNc())) {
|
||||
throw new ServiceException("请先维护业务员编码");
|
||||
|
||||
}
|
||||
if (org.apache.commons.lang.StringUtils.isBlank(tmsOrder.getMakerCodeNc())) {
|
||||
throw new ServiceException("请先维护制单员编码");
|
||||
}
|
||||
if (org.apache.commons.lang.StringUtils.isBlank(tmsOrder.getCustomsCodeNc())) {
|
||||
throw new ServiceException("请先维护制单员编码");
|
||||
}*/
|
||||
makerCodeNc=tmsOrder.getMakerCodeNc();
|
||||
Ysitem item=new Ysitem();
|
||||
item.setSo_deptid("NG0408");
|
||||
item.setPk_deptid("NG0408");
|
||||
item.setPk_psndoc(tmsOrder.getSalesmanCodeNc());
|
||||
item.setCustomer(tmsOrder.getCustomerCodeNc());
|
||||
item.setObjtype("0");
|
||||
item.setDirection("1");
|
||||
item.setScomment(tmsOrder.getAppointShipper());
|
||||
// item.setPk_currtype("CNY");
|
||||
item.setPk_currtype(tmsOrder.getSettlementCurrency());
|
||||
item.setPurchaseorder(tmsOrder.getGoodsNumber());
|
||||
item.setTaxrate("0");
|
||||
item.setQuantity_de("0");
|
||||
item.setMoney_de(String.valueOf(tmsOrder.getDeliveryFreight()));
|
||||
item.setMoney_bal(String.valueOf(tmsOrder.getDeliveryFreight()));
|
||||
BigDecimal tax_de=tmsOrder.getDeliveryFreight().multiply(tmsOrder.getTaxRate().divide(BigDecimal.valueOf(100))).setScale(2,BigDecimal.ROUND_HALF_UP);
|
||||
BigDecimal notax_de=tmsOrder.getDeliveryFreight().subtract(tax_de);
|
||||
item.setNotax_de(String.valueOf(notax_de));
|
||||
item.setLocal_tax_de(String.valueOf(notax_de));
|
||||
item.setTax_de(String.valueOf(tax_de));
|
||||
item.setPrice(String.valueOf(tmsOrder.getDeliveryFreight()));
|
||||
item.setTaxprice(String.valueOf(tmsOrder.getDeliveryFreight()));
|
||||
item.setDef75("T10");
|
||||
item.setInvoiceno("");
|
||||
ysitemList.add(item);
|
||||
List<ReconciliationAccount> reconciliationAccountList=reconciliationAccountMapper.selectList(new QueryWrapper<ReconciliationAccount>().lambda()
|
||||
.eq(ReconciliationAccount::getReconciliationId,businessDocumentDetaliId)
|
||||
.eq(ReconciliationAccount::getDelFlag,0));
|
||||
if (ObjectUtil.isNotNull(reconciliationAccountList)&&reconciliationAccountList.size()>0){
|
||||
for (ReconciliationAccount reconciliationAccount:reconciliationAccountList){
|
||||
Ysitem item=new Ysitem();
|
||||
item.setSo_deptid("NG0408");
|
||||
item.setPk_deptid("NG0408");
|
||||
item.setPk_psndoc(salesmanCodeNc);
|
||||
item.setCustomer(customerCodeNc);
|
||||
item.setObjtype("0");
|
||||
item.setDirection("1");
|
||||
item.setScomment("业务部:应收"+appointShipper+reconciliationAccount.getSubjectName()+reconciliation.getApplyNumber());
|
||||
// item.setPk_currtype("CNY");
|
||||
item.setPk_currtype(settlementCurrency);
|
||||
item.setPurchaseorder("");
|
||||
item.setTaxrate("0");
|
||||
item.setQuantity_de("0");
|
||||
item.setMoney_de(String.valueOf(reconciliationAccount.getAmount()));
|
||||
item.setMoney_bal(String.valueOf(reconciliationAccount.getAmount()));
|
||||
if(reconciliationAccount.getRate().compareTo(BigDecimal.ZERO)>0){
|
||||
BigDecimal tax_de=reconciliationAccount.getAmount().multiply(reconciliationAccount.getRate().divide(BigDecimal.valueOf(100))).setScale(2,BigDecimal.ROUND_HALF_UP);
|
||||
BigDecimal notax_de=reconciliationAccount.getAmount().subtract(tax_de);
|
||||
item.setNotax_de(String.valueOf(notax_de));
|
||||
item.setLocal_tax_de(String.valueOf(notax_de));
|
||||
item.setTax_de(String.valueOf(tax_de));
|
||||
}else{
|
||||
BigDecimal tax_de=BigDecimal.ZERO;
|
||||
BigDecimal notax_de=reconciliationAccount.getAmount().subtract(tax_de);
|
||||
item.setNotax_de(String.valueOf(notax_de));
|
||||
item.setLocal_tax_de(String.valueOf(notax_de));
|
||||
item.setTax_de(String.valueOf(tax_de));
|
||||
}
|
||||
|
||||
item.setPrice(String.valueOf(reconciliationAccount.getAmount()));
|
||||
item.setTaxprice(String.valueOf(reconciliationAccount.getAmount()));
|
||||
item.setDef75("T10");
|
||||
item.setInvoiceno("");
|
||||
ysitemList.add(item);
|
||||
}
|
||||
}
|
||||
|
||||
Ysbodys bodys=new Ysbodys();
|
||||
bodys.setItem(ysitemList);
|
||||
Ysbillhead billhead=new Ysbillhead();
|
||||
|
||||
+5
@@ -2,6 +2,7 @@ package com.linke.finance.domain.reconciliation.repository.todo;
|
||||
|
||||
import com.linke.finance.domain.reconciliation.entity.ReconciliationOrderDetail;
|
||||
import com.mhd.common.core.annotation.Excel;
|
||||
import com.mhd.common.core.domain.dto.ReconciliationAccountDTO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
@@ -270,4 +271,8 @@ public class ReconciliationDO extends BaseVOEntity{
|
||||
|
||||
@ApiModelProperty(value = "nc唯一标识")
|
||||
private String skNcId;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "账单科目明细")
|
||||
public List<ReconciliationAccountDTO> reconciliationAccountDTOList;
|
||||
}
|
||||
|
||||
+2
-2
@@ -13,7 +13,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
/**
|
||||
* 【请填写功能名称】对象 reconciliation_account
|
||||
*
|
||||
*
|
||||
* @author gen
|
||||
* @date 2026-01-14
|
||||
*/
|
||||
@@ -44,7 +44,7 @@ public class ReconciliationAccount extends BaseVOEntity{
|
||||
|
||||
@ApiModelProperty("应收账单id")
|
||||
@Excel(name = "应收账单id")
|
||||
private String reconciliationId;
|
||||
private Long reconciliationId;
|
||||
|
||||
@ApiModelProperty("科目id")
|
||||
@Excel(name = "科目id")
|
||||
|
||||
+1
-1
@@ -43,7 +43,7 @@ public class ReconciliationAccountDO extends BaseVOEntity{
|
||||
|
||||
@ApiModelProperty("应收账单id")
|
||||
@Excel(name = "应收账单id")
|
||||
private String reconciliationId;
|
||||
private Long reconciliationId;
|
||||
|
||||
@ApiModelProperty("科目id")
|
||||
@Excel(name = "科目id")
|
||||
|
||||
+2
-2
@@ -2,7 +2,7 @@ package com.linke.finance.interfaces.assembler.reconciliationAccount;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.linke.finance.domain.reconciliationAccount.repository.todo.ReconciliationAccountDO;
|
||||
import com.linke.finance.interfaces.dto.reconciliationAccount.ReconciliationAccountDTO;
|
||||
import com.mhd.common.core.domain.dto.ReconciliationAccountDTO;
|
||||
import com.mhd.common.core.exception.digitalLogisticsException.DigitalLogisticsException;
|
||||
import com.mhd.common.core.exception.digitalLogisticsException.UserError;
|
||||
import com.mhd.common.core.utils.bean.BeanUtils;
|
||||
@@ -62,4 +62,4 @@ public class ReconciliationAccountAssembler {
|
||||
return reconciliationAccountDO;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -2,6 +2,7 @@ package com.linke.finance.interfaces.facade.reconciliationAccount;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.mhd.common.core.domain.dto.ReconciliationAccountDTO;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
@@ -11,7 +12,6 @@ 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.linke.finance.interfaces.dto.reconciliationAccount.ReconciliationAccountDTO;
|
||||
import com.linke.finance.domain.reconciliationAccount.repository.todo.ReconciliationAccountDO;
|
||||
import com.linke.finance.domain.reconciliationAccount.repository.po.ReconciliationAccountPO;
|
||||
import com.linke.finance.application.server.reconciliationAccount.ReconciliationAccountApplicationService;
|
||||
|
||||
Reference in New Issue
Block a user