parent
							
								
									da79adb2d3
								
							
						
					
					
						commit
						4718f5f05e
					
				|  | @ -26,10 +26,7 @@ import shjh.jhzj7.fi.fi.utils.domin.ResponseData; | ||||||
| 
 | 
 | ||||||
| import java.math.BigDecimal; | import java.math.BigDecimal; | ||||||
| import java.text.SimpleDateFormat; | import java.text.SimpleDateFormat; | ||||||
| import java.util.ArrayList; | import java.util.*; | ||||||
| import java.util.Arrays; |  | ||||||
| import java.util.Date; |  | ||||||
| import java.util.List; |  | ||||||
| import java.util.concurrent.atomic.AtomicReference; | import java.util.concurrent.atomic.AtomicReference; | ||||||
| import java.util.stream.Collectors; | import java.util.stream.Collectors; | ||||||
| 
 | 
 | ||||||
|  | @ -93,18 +90,25 @@ public class PaybillPushSapOperation extends AbstractOperationServicePlugIn impl | ||||||
|                 bill = BusinessDataServiceHelper.loadSingle(bill.getPkValue(), "cas_paybill"); |                 bill = BusinessDataServiceHelper.loadSingle(bill.getPkValue(), "cas_paybill"); | ||||||
|                 String shjhSourcesystem = bill.getString("shjh_sourcesystem");//来源系统 |                 String shjhSourcesystem = bill.getString("shjh_sourcesystem");//来源系统 | ||||||
|                 //主动:{1.fk:不清帐,直传付款凭证给sap;2.SAP:要清账,都传}   被动:{不用传清账} FKZJ2025030040 |                 //主动:{1.fk:不清帐,直传付款凭证给sap;2.SAP:要清账,都传}   被动:{不用传清账} FKZJ2025030040 | ||||||
|                 //todo:付款单是由票据直接生成,凭证如何推送 |  | ||||||
|                 JSONObject data = new JSONObject(); |                 JSONObject data = new JSONObject(); | ||||||
|                 //抬头 |                 //抬头 | ||||||
|                 JSONObject isHeader = getIS_HEADER(bill); |                 JSONObject isHeader = getIS_HEADER(bill); | ||||||
| 
 |                 //组装核算维度map | ||||||
|  |                 Map<String, String> sapMap = new HashMap<>(); | ||||||
|  |                 QFilter filter1 = new QFilter("enable", QCP.equals, "1"); | ||||||
|  |                 QFilter filter2 = new QFilter("shjh_sap", QCP.not_equals, ""); | ||||||
|  |                 DynamicObject[] bdAsstacttypes = BusinessDataServiceHelper.load("bd_asstacttype", "id,shjh_sap,enable,flexfield", new QFilter[]{filter1, filter2}); | ||||||
|  |                 for (DynamicObject bdAsstacttype : bdAsstacttypes) { | ||||||
|  |                     sapMap.put(bdAsstacttype.getString("flexfield"), bdAsstacttype.getString("shjh_sap")); | ||||||
|  |                 } | ||||||
|  | //              时间问题代码未优化提取公共方法 | ||||||
| //				前提:若无凭证,校验 | //				前提:若无凭证,校验 | ||||||
| //				票: | //				票: | ||||||
| //				1.遍历付款单明细分录,若任意一行中存在SAP凭证号:组装明细XX,拿号调方法(W);遍历票据分录,拿票据号,查收款单(将表头凭证信息)_无行编号,SAP会计科目(从收款单对应凭证取借方),清张金额取票据(转让金额) | //				1.遍历付款单明细分录,若任意一行中存在SAP凭证号:组装明细XX,拿号调方法(W);遍历票据分录,拿票据号,查收款单(将表头凭证信息)_无行编号,SAP会计科目(从收款单对应凭证取借方),清张金额取票据(转让金额) | ||||||
| //				2.若无SAP凭证号:联查凭证(遍历,借方iteam{SGTXT:凭证行摘要},遍历票_查收款单(将表头凭证信息):行没有) | //				2.若无SAP凭证号:联查凭证(遍历,借方iteam{SGTXT:凭证行摘要},遍历票_查收款单(将表头凭证信息):行没有) | ||||||
| //				非票: | //				非票: | ||||||
| //				1.来源SAP :(iteam{}) | //				1.来源SAP :(付款单查凭证:遍历分录:if贷iteam{钱取贷方} 遍历明细clear{}) | ||||||
| //				2.else | //				2.else(item:付款单联查凭证:遍历分录{原逻辑}) | ||||||
|                 QFilter q1 = new QFilter("sourcebill", QCP.equals, bill.getPkValue()); |                 QFilter q1 = new QFilter("sourcebill", QCP.equals, bill.getPkValue()); | ||||||
|                 QFilter q2 = new QFilter("billstatus",QCP.equals,"C"); |                 QFilter q2 = new QFilter("billstatus",QCP.equals,"C"); | ||||||
|                 DynamicObject gl_voucher = BusinessDataServiceHelper.loadSingle("gl_voucher", |                 DynamicObject gl_voucher = BusinessDataServiceHelper.loadSingle("gl_voucher", | ||||||
|  | @ -343,6 +347,8 @@ public class PaybillPushSapOperation extends AbstractOperationServicePlugIn impl | ||||||
|                                         }else if("f000060".equals(asstype)){ |                                         }else if("f000060".equals(asstype)){ | ||||||
|                                             //行项目的参考码 |                                             //行项目的参考码 | ||||||
|                                             IT_ITEMS.put("XREF3",glassistbd.getString("assval")); |                                             IT_ITEMS.put("XREF3",glassistbd.getString("assval")); | ||||||
|  |                                         }else if(sapMap.containsKey(asstype)){ | ||||||
|  |                                             IT_ITEMS.put(sapMap.get(asstype),glassistbd.getString("assval")); | ||||||
|                                         } |                                         } | ||||||
|                                     } |                                     } | ||||||
|                                 } |                                 } | ||||||
|  | @ -532,6 +538,8 @@ public class PaybillPushSapOperation extends AbstractOperationServicePlugIn impl | ||||||
|                                         }else if("f000060".equals(asstype)){ |                                         }else if("f000060".equals(asstype)){ | ||||||
|                                             //行项目的参考码 |                                             //行项目的参考码 | ||||||
|                                             IT_ITEMS.put("XREF3",glassistbd.getString("assval")); |                                             IT_ITEMS.put("XREF3",glassistbd.getString("assval")); | ||||||
|  |                                         }else if(sapMap.containsKey(asstype)){ | ||||||
|  |                                             IT_ITEMS.put(sapMap.get(asstype),glassistbd.getString("assval")); | ||||||
|                                         } |                                         } | ||||||
|                                     } |                                     } | ||||||
|                                 } |                                 } | ||||||
|  | @ -679,6 +687,8 @@ public class PaybillPushSapOperation extends AbstractOperationServicePlugIn impl | ||||||
|                                         }else if("f000060".equals(asstype)){ |                                         }else if("f000060".equals(asstype)){ | ||||||
|                                             //行项目的参考码 |                                             //行项目的参考码 | ||||||
|                                             IT_ITEMS.put("XREF3",glassistbd.getString("assval")); |                                             IT_ITEMS.put("XREF3",glassistbd.getString("assval")); | ||||||
|  |                                         }else if(sapMap.containsKey(asstype)){ | ||||||
|  |                                             IT_ITEMS.put(sapMap.get(asstype),glassistbd.getString("assval")); | ||||||
|                                         } |                                         } | ||||||
|                                     } |                                     } | ||||||
|                                 } |                                 } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue