parent
							
								
									e45c1e6707
								
							
						
					
					
						commit
						30fd67a8d3
					
				| 
						 | 
				
			
			@ -130,6 +130,72 @@ public class ApiMappingBillPlugin extends AbstractFormPlugin implements Plugin {
 | 
			
		|||
            String result = pushBillAttachment(dataEntity);
 | 
			
		||||
            this.getView().showTipNotification("返回结果:" + result);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 补偿方案(推送BIP电子回单)
 | 
			
		||||
        if ("shkd_compensatebip".equals(itemKey)) {
 | 
			
		||||
            List<DynamicObject> dynamicObjectList = new ArrayList<>();
 | 
			
		||||
            // 获取多选基础资料银行类别(推送银行类别)
 | 
			
		||||
            ArrayList<String> bankTypeArray = new ArrayList<>();
 | 
			
		||||
            DynamicObjectCollection bankTypeArr = dataEntity.getDynamicObjectCollection("shkd_banktype");
 | 
			
		||||
            for (DynamicObject bankTypeData : bankTypeArr) {
 | 
			
		||||
                DynamicObject bankType = bankTypeData.getDynamicObject("fbasedataid");//银行类别基础资料数据包
 | 
			
		||||
                if (bankType != null) {
 | 
			
		||||
                    String bankTypeName = bankType.getString("name");//银行类别名称
 | 
			
		||||
                    bankTypeArray.add(bankTypeName);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // 获取多选基础资料业务单元(推送组织)
 | 
			
		||||
            ArrayList<Long> orgArray = new ArrayList<>();
 | 
			
		||||
            DynamicObjectCollection orgArr = dataEntity.getDynamicObjectCollection("shkd_orgs");
 | 
			
		||||
            for (DynamicObject orgData : orgArr) {
 | 
			
		||||
                orgArray.add(orgData.getLong("fbasedataid_Id"));
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // 获取推送开始时间
 | 
			
		||||
            Date shkdStartdate = dataEntity.getDate("shkd_startdate");
 | 
			
		||||
 | 
			
		||||
            DynamicObject[] elecreceiptArays = BusinessDataServiceHelper.load("bei_elecreceipt",
 | 
			
		||||
                    "id,billno,shkd_pushstatus,fileserverurl,bizdate,oppbank,oppbankname,description," +
 | 
			
		||||
                            "company,oppbanknumber,oppunit,detaildatetime,accountbank,amount,use,debitamount," +
 | 
			
		||||
                            "creditamount,detailid,uploadfilename,shkd_businessnumber,shkd_businessid,shkd_businessname," +
 | 
			
		||||
                            "filepath,receiptno,ismatch"
 | 
			
		||||
                    , new QFilter("bizdate", QCP.large_equals, shkdStartdate)
 | 
			
		||||
                            .and("ismatch", QCP.equals, "1")
 | 
			
		||||
                            .and("shkd_pushstatus", QCP.not_equals, "已推送")
 | 
			
		||||
                            .and("company", QCP.in, orgArray)
 | 
			
		||||
                            .and("billno", QCP.equals, dataEntity.getString("shkd_sourcenumber")).toArray());
 | 
			
		||||
 | 
			
		||||
            if (elecreceiptArays == null || elecreceiptArays.length == 0) {
 | 
			
		||||
                this.getView().showTipNotification("未查询到符合条件的单据");
 | 
			
		||||
            } else {
 | 
			
		||||
                DynamicObject dynamicObject = elecreceiptArays[0];
 | 
			
		||||
                //开户银行(银行账户)
 | 
			
		||||
                DynamicObject accountbank = dynamicObject.getDynamicObject("accountbank");
 | 
			
		||||
 | 
			
		||||
                //开户行(合作金融机构)
 | 
			
		||||
                DynamicObject bank = accountbank.getDynamicObject("bank");
 | 
			
		||||
 | 
			
		||||
                String bank_number = bank.getString("number");
 | 
			
		||||
                DynamicObject[] bd_finorginfo = BusinessDataServiceHelper.load("bd_finorginfo", "id,number,bank_cate", new QFilter("number", QCP.equals, bank_number).toArray());
 | 
			
		||||
 | 
			
		||||
                //银行类别
 | 
			
		||||
                DynamicObject bank_cate = bd_finorginfo[0].getDynamicObject("bank_cate");
 | 
			
		||||
 | 
			
		||||
                String bank_name = bank_cate.getString("name");
 | 
			
		||||
 | 
			
		||||
                if (bankTypeArray.contains(bank_name)) {
 | 
			
		||||
                    this.getView().showTipNotification("获取符合推送条件的单据:" + dynamicObject.getString("billno"));
 | 
			
		||||
//                    logger.info("获取符合推送条件的单据:{}", dynamicObject.getString("billno"));
 | 
			
		||||
                    String result = paymentSlipsJson(dynamicObject, "BIP", dynamicObjectList, null);
 | 
			
		||||
                    if (result.contains("成功")) {
 | 
			
		||||
                        SaveServiceHelper.save(dynamicObjectList.toArray(new DynamicObject[0]));
 | 
			
		||||
                    } else {
 | 
			
		||||
                        this.getView().showTipNotification("推送失败:" + dynamicObject.getString("billno"));
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void parseJson(Object obj, int level, String parentKey) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue