1、生成凭证核心逻辑

This commit is contained in:
zhengyf 2025-07-29 23:54:14 +08:00
parent 22b03c85e3
commit 567082f52c
5 changed files with 1788 additions and 94 deletions

View File

@ -10,7 +10,7 @@ import java.util.Map;
* Created by zydd on 2025-07-09 10:11
*/
public interface ICoreService {
void generateVoucher(CreateVoucherVO createVoucherVO);
void generateVoucher(CreateVoucherVO createVoucherVO)throws Exception;
List<Map<String, Object>> queryDataByMdmId(CreateVoucherVO createVoucherVO);
}

View File

@ -0,0 +1,20 @@
package com.hzya.frame.voucher.ae.generate.core.vo;
import lombok.Data;
import java.io.Serializable;
/**
* Created by zydd on 2025-07-25 11:39
* 科目VO
*/
@Data
public class AccsubjVO implements Serializable {
private String id;
private String pk_accsubj;
private String subjcode;
private String subjname;
private String dispname;
private String pk_glorgbook;
}

View File

@ -20,4 +20,8 @@ public class CreateVoucherVO implements Serializable {
private String billCode;
private String timeStart;
private String timeEnd;
/**
* 0 未生成 1 已生成 2 生成失败
*/
private String status;
}

View File

@ -15,14 +15,35 @@ public class VoucherData {
public static class Voucher {
private String attachment;//附单据数
private String pk_corp;//公司
private String corp_name;
private String corp_code;
private String pk_glorgbook;//账簿
private String pk_prepared;//制单人编码
private String pk_vouchertype;//凭证类别简称
private String prepareddate;//制单日期格式示例2021-04-27
//u8c
private String voucherkind;//凭证类型
private String no;//凭证号
private String modifyflag;//修改标志当不想让界面修改时传三个N
private String isdifflag;//是否差异凭证
private String explanation;//凭证摘要
private String hasCashflowModified;//凭证是否手动修改了现金流量分析如果传现金流量此属性传Y如果没有现金流量分析此属性不传或传N
//ncc
private String prepared;//制单人编码
private String vouchertype_code;//凭证类别编码
private String vouchertype_name;//凭证类别名称
private String vouchertype_shortname;//凭证类别编码
private String num;//凭证号
private String accbookCode;//核算账簿编码
private String accbookName;//核算账簿名称
private String year;//会计年度
private String period;//会计期间
private List<Detail> details;
@Data
public class Detail {
public static class Detail {
private String detailindex;//分录号
private String excrate2;//汇率2.7版本及以前版本不支持外面传进来需要在外币汇率节点设置
private String price;//单价
@ -37,23 +58,59 @@ public class VoucherData {
private String creditquantity;//贷方数量
private String creditamount;//原币贷方金额必填没有就传0就行了
private String localcreditamount;//本币贷方金额必填没有就传0就行了
//u8c
private String modifyflag;//修改标志不允许修改时传是16个N
//ncc
private String currtypeId;//币种编码
private String currtypeCode;//币种编码
private String currtypeName;//币种名称
private String accountId;//科目编码`
private String accountCode;//科目编码`
private String accountName;//科目名称`
private String quantity;//数量
private String amount;//原币金额
private String groupdebitamount;//-集团本币借方金额
private String globaldebitamount;//-全局本币借方金额
private String groupcreditamount;//-集团本币贷方金额
private String globalcreditamount;//-全局本币贷方金额
private String locRate;//组织本币汇率
private String groupRate;//集团本币汇率
private String globalRate;//全局本币汇率
private String unitCode;//业务单元编码
private String busidate;//业务日期
//辅助核算
private List<Ass> ass;
private List<Cashflow> cashflow;
@Data
public class Ass {
public static class Ass {
private String checktypeid;//辅助核算类型编码
private String checktypecode;//辅助核算类型编码
private String checktypename;//辅助核算类型编码
private String checkvalueid;//辅助核算的值编码
private String checkvaluecode;//辅助核算的值编码
private String checkvaluename;//辅助核算的值编码
}
@Data
public class Cashflow {
public static class Cashflow {
private String memo;//备注v5.1开始支持
private String money;//原币金额
private String moneyass;//辅币v5.1开始支持
private String moneymain;//主币v5.1开始支持
private String pk_cashflow;//现金流量表项编码
private String pk_currtype;//现金流量币种编码
//ncc
private String mainCode;//主表表项
private String subCode;//附表表项
private String innercorpCode;//内部单位
private String amount;//表项原币金额
private String localamount;//表项组织本币金额
private String groupamount;//表项集团本币金额
private String globalamount;//表项全局本币金额
}
}
}