销售发票本币汇率计算调整
This commit is contained in:
		
							parent
							
								
									c5f34f9f24
								
							
						
					
					
						commit
						ff835002e9
					
				|  | @ -278,6 +278,13 @@ public class saveCommitAction extends AbstractNCCRestResource { | ||||||
| //                // 主含税净价 = 含税单价(原始) | //                // 主含税净价 = 含税单价(原始) | ||||||
| //                BigDecimal norigtaxnetprice = norigtaxprice; | //                BigDecimal norigtaxnetprice = norigtaxprice; | ||||||
| 
 | 
 | ||||||
|  |                 // 从销售订单中获取币种 | ||||||
|  |                 String currencycode = getString_TrimAsNull(value2.get("currencycode")); | ||||||
|  |                 otherJson.put("corigcurrencyid", currencycode.isEmpty() ? "CNY" : currencycode); | ||||||
|  |                 // 从销售订单中获取折本汇率 | ||||||
|  |                 BigDecimal nexchangerate = getUFDouble_NullAsZero(value2.get("nexchangerate")).toBigDecimal(); | ||||||
|  |                 otherJson.put("nexchangerate", nexchangerate); | ||||||
|  | 
 | ||||||
|                 // 输入参数:从你的 item 获取各个字段 |                 // 输入参数:从你的 item 获取各个字段 | ||||||
|                 BigDecimal nastnum = new BigDecimal(item.getString("nastnum"));  // 数量 |                 BigDecimal nastnum = new BigDecimal(item.getString("nastnum"));  // 数量 | ||||||
|                 nastnum = nastnum.setScale(4, RoundingMode.HALF_UP); |                 nastnum = nastnum.setScale(4, RoundingMode.HALF_UP); | ||||||
|  | @ -309,26 +316,20 @@ public class saveCommitAction extends AbstractNCCRestResource { | ||||||
|                 // 主无税净价(即不含税单价) |                 // 主无税净价(即不含税单价) | ||||||
|                 BigDecimal norignetprice = nqtorigprice; |                 BigDecimal norignetprice = nqtorigprice; | ||||||
| 
 | 
 | ||||||
|                 // 从销售订单中获取币种 |                 // 本币(人民币)需要处理汇率,金额保留两位小数,单价保留4位小数 | ||||||
|                 String corigcurrencyid = getString_TrimAsNull(value2.get("corigcurrencyid")); |                 // 本币无税金额 | ||||||
|                 otherJson.put("corigcurrencyid", "".equals(corigcurrencyid) ? "CNY" : corigcurrencyid); |                 BigDecimal nmny = norigmny.multiply(nexchangerate).setScale(2, RoundingMode.HALF_UP); | ||||||
|                 // 从销售订单中获取折本汇率 |                 // 主本币无税净价 | ||||||
|                 BigDecimal nexchangerate = getUFDouble_NullAsZero(value2.get("nexchangerate")).toBigDecimal(); |                 BigDecimal nnetprice = norignetprice.multiply(nexchangerate).setScale(4, RoundingMode.HALF_UP); | ||||||
|                 otherJson.put("nexchangerate", nexchangerate); |                 // 本币价税合计 价税合计*汇率 | ||||||
|                 // 单价和金额*汇率 |                 BigDecimal ntaxmny = norigtaxmny.multiply(nexchangerate).setScale(2, RoundingMode.HALF_UP); | ||||||
|                 nqtorigprice = nqtorigprice.multiply(nexchangerate); |                 // 税额 | ||||||
|                 norigmny = norigmny.multiply(nexchangerate); |                 ntax = ntaxmny.subtract(nmny).setScale(2, RoundingMode.HALF_UP); | ||||||
|                 norigtaxmny = norigtaxmny.multiply(nexchangerate); |  | ||||||
|                 norigtaxprice = norigtaxprice.multiply(nexchangerate); |  | ||||||
|                 norignetprice = norignetprice.multiply(nexchangerate); |  | ||||||
|                 nqtorigtaxprice = nqtorigtaxprice.multiply(nexchangerate); |  | ||||||
|                 norigtaxnetprice = norigtaxnetprice.multiply(nexchangerate); |  | ||||||
| 
 |  | ||||||
| 
 | 
 | ||||||
|                 itemDetails.put("nqtorigprice", nqtorigprice);//无税单价 |                 itemDetails.put("nqtorigprice", nqtorigprice);//无税单价 | ||||||
|                 itemDetails.put("norigprice", nqtorigprice);//主无税单价 |                 itemDetails.put("norigprice", nqtorigprice);//主无税单价 | ||||||
|                 itemDetails.put("norigmny", norigmny);//无税金额 |                 itemDetails.put("norigmny", norigmny);//无税金额 | ||||||
|                 itemDetails.put("nmny", norigmny);//本币无税金额 |                 itemDetails.put("nmny", nmny);//本币无税金额 | ||||||
|                 itemDetails.put("norigtaxmny", norigtaxmny);//价税合计 |                 itemDetails.put("norigtaxmny", norigtaxmny);//价税合计 | ||||||
|                 itemDetails.put("norigtaxprice", norigtaxprice);//主含税单价 |                 itemDetails.put("norigtaxprice", norigtaxprice);//主含税单价 | ||||||
|                 itemDetails.put("norignetprice", norignetprice);//主无税净价 |                 itemDetails.put("norignetprice", norignetprice);//主无税净价 | ||||||
|  | @ -336,8 +337,8 @@ public class saveCommitAction extends AbstractNCCRestResource { | ||||||
|                 itemDetails.put("ntax", ntax);//税额 |                 itemDetails.put("ntax", ntax);//税额 | ||||||
|                 itemDetails.put("ncaltaxmny", ncaltaxmny);//计税金额 |                 itemDetails.put("ncaltaxmny", ncaltaxmny);//计税金额 | ||||||
|                 itemDetails.put("norigtaxnetprice", norigtaxnetprice);//主含税净价 |                 itemDetails.put("norigtaxnetprice", norigtaxnetprice);//主含税净价 | ||||||
|                 itemDetails.put("nnetprice", norignetprice);//主本币无税净价 |                 itemDetails.put("nnetprice", nnetprice);//主本币无税净价 | ||||||
|                 itemDetails.put("ntaxmny", norigtaxmny);//本币价税合计 |                 itemDetails.put("ntaxmny", ntaxmny);//本币价税合计 | ||||||
|                 csaleinvoicebid.add(itemDetails); |                 csaleinvoicebid.add(itemDetails); | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue