开票申请价税合计必须和销售发票中价税合计一致

This commit is contained in:
lihao 2025-04-12 18:09:55 +08:00
parent 020adbf51d
commit 44a74b654b
1 changed files with 12 additions and 12 deletions

View File

@ -284,11 +284,11 @@ public class IVApplicationServiceImpl implements IVApplicationService {
} }
} }
//如果来源单据为销售发票,根据来源单据编号src_billno和来源单据类型billtype = 32查询销售发票价税合计ntotalorigmny与开票申请中价税合计jshj比较须满足 jshj<ntotalorigmny //如果来源单据为销售发票,根据来源单据编号src_billno和来源单据类型billtype = 32查询销售发票价税合计ntotalorigmny与开票申请中价税合计jshj比较须满足 jshj<ntotalorigmny
String src_billtype = ivApplicationVO.getParentVO().getSrc_billtype(); //来源单据类型 String src_billtype = ivApplicationVO.getParentVO().getSrc_billtype(); //来源单据类型
String src_billno = ivApplicationVO.getParentVO().getSrc_billno(); //来源单据号 String src_billno = ivApplicationVO.getParentVO().getSrc_billno(); //来源单据号
String def23 = ivApplicationVO.getParentVO().getDef23(); //bip开票类型 3出口发票 String def23 = ivApplicationVO.getParentVO().getDef23(); //bip开票类型 3出口发票
//根据开票申请自定义项23查询自定义档案编码 //根据开票申请自定义项23查询自定义档案编码
BaseDAO dao = new BaseDAO(); BaseDAO dao = new BaseDAO();
String sqlDefdoc = "select code from bd_defdoc where dr = 0 and pk_defdoc = '" +def23+"'"; String sqlDefdoc = "select code from bd_defdoc where dr = 0 and pk_defdoc = '" +def23+"'";
Object objDefdoc = dao.executeQuery(sqlDefdoc, new ColumnProcessor()); Object objDefdoc = dao.executeQuery(sqlDefdoc, new ColumnProcessor());
@ -297,23 +297,23 @@ public class IVApplicationServiceImpl implements IVApplicationService {
def23Code = objDefdoc.toString(); def23Code = objDefdoc.toString();
} }
/** /**
* 2025-03-12新增 * 2025-03-12新增
* 开票申请自定义项 23bip开票类型 不等于 3def23Code = 3 * 开票申请自定义项 23bip开票类型 不等于 3def23Code = 3
* 再做金额校验 * 再做金额校验
*/ */
if("32".equals(src_billtype) && !StringUtil.isNullStringOrNull(src_billno) && !"3".equals(def23Code)){ if("32".equals(src_billtype) && !StringUtil.isNullStringOrNull(src_billno) && !"3".equals(def23Code)){
String sql = "select ntotalorigmny from so_saleinvoice where dr = 0 and vbillcode = '" +src_billno+"'"; String sql = "select ntotalorigmny from so_saleinvoice where dr = 0 and vbillcode = '" +src_billno+"'";
Object obj = dao.executeQuery(sql, new ColumnProcessor()); Object obj = dao.executeQuery(sql, new ColumnProcessor());
//销售发票价税合计 //销售发票价税合计
UFDouble ntotalorigmny = UFDouble.ZERO_DBL; UFDouble ntotalorigmny = UFDouble.ZERO_DBL;
if(obj != null) { if(obj != null) {
ntotalorigmny = new UFDouble(obj.toString()); ntotalorigmny = new UFDouble(obj.toString());
} }
//开票申请价税合计 //开票申请价税合计
UFDouble jshj = ivApplicationVO.getParentVO().getJshj(); UFDouble jshj = ivApplicationVO.getParentVO().getJshj();
//如果开票申请价税合计 大于 销售发票价税合计则返回报错 //如果开票申请价税合计 大于 销售发票价税合计则返回报错
if(jshj != null && ntotalorigmny != null && jshj.compareTo(ntotalorigmny) != 0){ if(jshj != null && ntotalorigmny != null && jshj.compareTo(ntotalorigmny) != 0){
throw new BusinessException("价税合计必须和销售发票中价税合计一致"); throw new BusinessException("价税合计必须和销售发票中价税合计一致");
} }
} }