parent
							
								
									65a20c9dc5
								
							
						
					
					
						commit
						96bf7240e6
					
				| 
						 | 
				
			
			@ -40,7 +40,7 @@ import java.math.BigDecimal;
 | 
			
		|||
import java.util.*;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 标准单据列表插件
 | 
			
		||||
 * 内部账户对账单列表操作(更新、确认对账、取消对账)
 | 
			
		||||
 */
 | 
			
		||||
public class JszxdzdListPlugin extends AbstractListPlugin implements Plugin {
 | 
			
		||||
    private static final Log logger = LogFactory.getLog(JszxdzdListPlugin.class);
 | 
			
		||||
| 
						 | 
				
			
			@ -156,6 +156,7 @@ public class JszxdzdListPlugin extends AbstractListPlugin implements Plugin {
 | 
			
		|||
                Date shkd_jsrq = dynamicObject.getDate("shkd_jsrq");//结束日期
 | 
			
		||||
                DataSet emptyDataSet = getData(shkd_qsrq, shkd_jsrq);
 | 
			
		||||
                DynamicObjectCollection dataRows = ORM.create().toPlainDynamicObjectCollection(emptyDataSet);
 | 
			
		||||
                logger.info("更新数据 → 数据行数:" + dataRows.size() + "\n第一条数据:" + dataRows.get(0));
 | 
			
		||||
                for (DynamicObject dataRow : dataRows) {
 | 
			
		||||
                    Long settcenter = dataRow.getLong("settcenter");//结算中心
 | 
			
		||||
                    Long org = dataRow.getLong("org");//资金组织
 | 
			
		||||
| 
						 | 
				
			
			@ -167,18 +168,21 @@ public class JszxdzdListPlugin extends AbstractListPlugin implements Plugin {
 | 
			
		|||
                    if (settcenter.equals(shkd_jszxdata) && org.equals(shkd_zjzzorg) && inneraccount.equals(shkd_nbzh)
 | 
			
		||||
                            && amountstart.compareTo(shkd_qcyeamount) == 0 && currincome.compareTo(shkd_bqsramount) == 0
 | 
			
		||||
                            && currpay.compareTo(shkd_bqzcamount) == 0 && amountend.compareTo(shkd_qmyeamount) == 0) {
 | 
			
		||||
                        logger.info("更新数据 → 数据一致:" + dataRow);
 | 
			
		||||
                        break;
 | 
			
		||||
                    } else if (settcenter.equals(shkd_jszxdata) && org.equals(shkd_zjzzorg) && inneraccount.equals(shkd_nbzh)) {
 | 
			
		||||
                        dataRow.set("shkd_qcyeamount", amountstart);//期初余额
 | 
			
		||||
                        dataRow.set("shkd_bqsramount", currincome);//本期收入
 | 
			
		||||
                        dataRow.set("shkd_bqzcamount", currpay);//本期支出
 | 
			
		||||
                        dataRow.set("shkd_qmyeamount", amountend);//期末余额
 | 
			
		||||
                        dataRow.set("shkd_sfyz", false);//期末余额
 | 
			
		||||
                        SaveServiceHelper.save(new DynamicObject[]{dataRow});
 | 
			
		||||
                        logger.info("更新数据 → 数据不一致:" + dataRow);
 | 
			
		||||
                        dynamicObject.set("shkd_qcyeamount", amountstart);//期初余额
 | 
			
		||||
                        dynamicObject.set("shkd_bqsramount", currincome);//本期收入
 | 
			
		||||
                        dynamicObject.set("shkd_bqzcamount", currpay);//本期支出
 | 
			
		||||
                        dynamicObject.set("shkd_qmyeamount", amountend);//期末余额
 | 
			
		||||
                        dynamicObject.set("shkd_sfyz", false);//期末余额
 | 
			
		||||
                        SaveServiceHelper.save(new DynamicObject[]{dynamicObject});
 | 
			
		||||
                        break;
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            this.getView().showSuccessNotification("更新成功");
 | 
			
		||||
            this.getView().invokeOperation("refresh");
 | 
			
		||||
        } else if ("shkd_confirmre".equals(itemKey)) {
 | 
			
		||||
            String msg = "是否确认对账";
 | 
			
		||||
| 
						 | 
				
			
			@ -293,8 +297,9 @@ public class JszxdzdListPlugin extends AbstractListPlugin implements Plugin {
 | 
			
		|||
    private DataSet queryAccts() {
 | 
			
		||||
        QFilter innerAccQFilter = new QFilter("acctclassify", "=", AcctClassifyEnum.INNER_ACCOUNT.getValue());
 | 
			
		||||
        innerAccQFilter.and(new QFilter("acctstatus", "!=", BankAcctStatusEnum.CLOSED.getValue()));
 | 
			
		||||
        String appId = TmcAppEnum.IFM.getValue();
 | 
			
		||||
        List<Long> orgIdList = IfmSettleCenterHelper.getAuthorizedRegisteredSettleCenterIds(RequestContext.get().getCurrUserId(), TmcAppEnum.IFM.getValue(), "ifm_statementrpt", "47150e89000000ac");
 | 
			
		||||
//        List<Long> orgIdList = IfmSettleCenterHelper.getAuthorizedRegisteredSettleCenterIds(RequestContext.get().getCurrUserId(), TmcAppEnum.IFM.getValue(), "ifm_statementrpt", "47150e89000000ac");
 | 
			
		||||
        // 默认司库调度用户
 | 
			
		||||
        List<Long> orgIdList = IfmSettleCenterHelper.getAuthorizedRegisteredSettleCenterIds(2122443891381665794L, TmcAppEnum.IFM.getValue(), "ifm_statementrpt", "47150e89000000ac");
 | 
			
		||||
        innerAccQFilter.and(new QFilter("bank.id", "in", orgIdList));
 | 
			
		||||
        String selectInnerAccFields = "id,company.id,bank.id,bankaccountnumber,opendate, currency.fbasedataid.id as currencyid";
 | 
			
		||||
        return QueryServiceHelper.queryDataSet(this.getClass().getName(), "bd_accountbanks", selectInnerAccFields, innerAccQFilter.toArray(), (String) null);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,12 +24,13 @@ import kd.tmc.fbp.common.enums.TmcAppEnum;
 | 
			
		|||
import kd.tmc.fbp.common.util.DateUtils;
 | 
			
		||||
import kd.tmc.ifm.enums.AcctClassifyEnum;
 | 
			
		||||
import kd.tmc.ifm.helper.IfmSettleCenterHelper;
 | 
			
		||||
import java.text.SimpleDateFormat;
 | 
			
		||||
 | 
			
		||||
import java.math.BigDecimal;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 后台任务插件
 | 
			
		||||
 * 内部账户对账单报表数据保存
 | 
			
		||||
 */
 | 
			
		||||
public class JszxdzdTaskPlugin extends AbstractTask implements Plugin {
 | 
			
		||||
    private static final Log logger = LogFactory.getLog(JszxdzdTaskPlugin.class);
 | 
			
		||||
| 
						 | 
				
			
			@ -44,6 +45,10 @@ public class JszxdzdTaskPlugin extends AbstractTask implements Plugin {
 | 
			
		|||
        cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
 | 
			
		||||
        Date bizdate_enddate = cal.getTime(); // 上个月最后一天
 | 
			
		||||
 | 
			
		||||
        // 提取年月
 | 
			
		||||
        SimpleDateFormat yearMonthFormat = new SimpleDateFormat("yyyy-MM");
 | 
			
		||||
        String yearMonth = yearMonthFormat.format(bizdate_startdate);
 | 
			
		||||
 | 
			
		||||
        DataSet emptyDataSet = getData(bizdate_startdate, bizdate_enddate);
 | 
			
		||||
 | 
			
		||||
        DynamicObjectCollection dataRows = ORM.create().toPlainDynamicObjectCollection(emptyDataSet);
 | 
			
		||||
| 
						 | 
				
			
			@ -103,6 +108,7 @@ public class JszxdzdTaskPlugin extends AbstractTask implements Plugin {
 | 
			
		|||
            newDynamicObject.set("shkd_qmyeamount", amountend);//期末余额
 | 
			
		||||
            newDynamicObject.set("shkd_qsrq", bizdate_startdate);//起始日期
 | 
			
		||||
            newDynamicObject.set("shkd_jsrq", bizdate_enddate);//结束日期
 | 
			
		||||
            newDynamicObject.set("shkd_rqym", yearMonth);//日期(年月)
 | 
			
		||||
 | 
			
		||||
            SaveServiceHelper.save(new DynamicObject[]{newDynamicObject});
 | 
			
		||||
        }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue