@ -30,6 +30,7 @@ import java.io.FileInputStream;
import java.io.IOException ;
import java.text.SimpleDateFormat ;
import java.util.* ;
import java.util.concurrent.CountDownLatch ;
import java.util.concurrent.ExecutorService ;
import java.util.concurrent.Executors ;
import java.util.stream.Collectors ;
@ -60,39 +61,66 @@ public class DeleteU8cDataUtil {
private static Integer MARK2 = 0 ;
CountDownLatch latch = new CountDownLatch ( 2 ) ;
@PostConstruct
public void init ( ) {
deleteTargetU8cData ( ) ;
/ / deleteTargetU8cData ( ) ;
}
public void deleteTargetU8cData ( ) {
Thread thread = new Thread ( new Runnable ( ) {
Thread thread 000 = new Thread ( new Runnable ( ) {
@Override
public void run ( ) {
synchronized ( LOCK_OBJECT ) {
if ( MARK = = 0 ) {
MARK = 1 ;
/ / 删除销售出库单
cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
}
}
}
} , " 删除销售出库单 2025-05-29 " ) ;
thread . start ( ) ;
/ / Thread thread = new Thread ( new Runnable ( ) {
/ / @Override
/ / public void run ( ) {
/ / synchronized ( LOCK_OBJECT ) {
/ / if ( MARK = = 0 ) {
/ / MARK = 1 ;
/ / / / 删除销售出库单
/ / / / cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
/ / / / 反审核销售订单
/ / / / cancelSignatureSoSaleReadExcel2505282140V2 ( ) ;
/ / }
/ / }
/ / latch . countDown ( ) ;
/ / }
/ / } , " 反审核销售订单 2025-05-30 " ) ;
/ / thread . start ( ) ;
/ /
/ / Thread thread2 = new Thread ( new Runnable ( ) {
/ / @Override
/ / public void run ( ) {
/ / synchronized ( LOCK_OBJECT2 ) {
/ / if ( MARK2 = = 0 ) {
/ / MARK2 = 1 ;
/ / / / 删除销售发票
/ / / / abandonmentReviewSoSaleinvoice2505282107 ( ) ;
/ / }
/ / }
/ / latch . countDown ( ) ;
/ / }
/ / } , " 删除销售发票 2025-05-30 " ) ;
/ / thread2 . start ( ) ;
Thread thread2 = new Thread ( new Runnable ( ) {
@Override
public void run ( ) {
synchronized ( LOCK_OBJECT2 ) {
if ( MARK2 = = 0 ) {
MARK2 = 1 ;
/ / 删除销售发票
abandonmentReviewSoSaleinvoice2505282107 ( ) ;
}
try {
/ / 等待两个线程都完成
/ / latch . await ( ) ;
/ / 在两个线程都完成后执行反审核销售订单方法
/ / cancelSignatureSoSaleReadExcel2505282140V2 ( ) ;
/ / 修复销售订单部门字段错误问题
/ / repairSoSaleDepartment ( ) ;
/ / 销售订单审核
/ / salesOrderReviewV2 ( ) ;
} catch ( Exception e ) {
e . printStackTrace ( ) ;
/ / Thread . currentThread ( ) . interrupt ( ) ;
/ / throw new RuntimeException ( " 等待线程完成时中断 " , e ) ;
}
}
} , " 删除销售发票 2025-05-29 " ) ;
thread2 . start ( ) ;
} , " U8C单据逻辑处理: 销售订单审核 " ) ;
thread 000 . start ( ) ;
}
/ * *
@ -545,6 +573,8 @@ public class DeleteU8cDataUtil {
}
}
private Object lockObject = new Object ( ) ;
/ * *
* 2024年8月8日 10 : 54 : 48
* 推送U8C销售订单方法
@ -552,17 +582,19 @@ public class DeleteU8cDataUtil {
* @author liuyang
* /
public void sendU8C ( String url , String param , Integer number ) throws Exception {
logger . info ( " 入参: " + param ) ;
long l = System . currentTimeMillis ( ) ;
String result = HttpRequest . post ( url ) . header ( " usercode " , " admin1 " ) . header ( " password " , " f7fcde654e968541cc803c4b08c30abb " ) . header ( " system " , " lz1 " ) . header ( " trantype " , " code " ) . body ( param ) / / 表单内容
synchronized ( lockObject ) {
logger . info ( " 入参: " + param ) ;
long l = System . currentTimeMillis ( ) ;
String result = HttpRequest . post ( url ) . header ( " usercode " , " admin1 " ) . header ( " password " , " f7fcde654e968541cc803c4b08c30abb " ) . header ( " system " , " lz1 " ) . header ( " trantype " , " code " ) . body ( param ) / / 表单内容
/ / . timeout ( 900000000 ) / / 超时 , 毫秒 , 超时时间调整为1个小时
. timeout ( 3600000 ) . execute ( ) . body ( ) ;
long l1 = System . currentTimeMillis ( ) ;
long timeConsuming = l1 - l ;
logger . info ( " \ n回参: " + result + " \ n执行耗时: " + timeConsuming + " \ n条数: " + number + " 每单耗时: " + ( timeConsuming / 1000 / number ) ) ;
. timeout ( 3600000 ) . execute ( ) . body ( ) ;
long l1 = System . currentTimeMillis ( ) ;
long timeConsuming = l1 - l ;
logger . info ( " \ n回参: " + result + " \ n执行耗时: " + timeConsuming + " \ n条数: " + number + " 每单耗时: " + ( timeConsuming / 1000 / number ) ) ;
/ / JSONObject jsonObject = JSON . parseObject ( result ) ;
/ / result = String . valueOf ( jsonObject . get ( " attribute " ) ) ;
/ / System . out . println ( result ) ;
}
}
/ * *
@ -1116,7 +1148,7 @@ public class DeleteU8cDataUtil {
List < DeleteU8cDataUtilEntity > soSaleinvoiceEntities2 = deleteU8cDataUtilDao . queryIcGeneralHByCancelSignatureV2 ( deleteIcGeneralHVo2 ) ;
Map < String , List < DeleteU8cDataUtilEntity > > stringListMap2 = groupByDbilldatev2 ( soSaleinvoiceEntities2 ) ;
if ( stringListMap2 . size ( ) > 0 ) {
for ( Map . Entry < String , List < DeleteU8cDataUtilEntity > > entry : stringListMap . entrySet ( ) ) {
for ( Map . Entry < String , List < DeleteU8cDataUtilEntity > > entry : stringListMap 2 . entrySet ( ) ) {
String key = entry . getKey ( ) ;
List < DeleteU8cDataUtilEntity > valueList = entry . getValue ( ) ;
List < String > vreceiptcodeList = valueList . stream ( ) . map ( DeleteU8cDataUtilEntity : : getVbillcode ) . collect ( Collectors . toList ( ) ) ;
@ -1170,7 +1202,7 @@ public class DeleteU8cDataUtil {
try {
/ / 确定销售订单范围 、 19648
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 1 00) ;
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 5 00) ;
if ( lists . size ( ) > 0 ) {
for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities1 = lists . get ( i ) ;
@ -1266,16 +1298,15 @@ public class DeleteU8cDataUtil {
}
}
/ * *
* 销售订单取消签字 + 删除
* 销售订单取消签字
* /
public void cancelSignatureSoSaleReadExcel2505282140V2 ( ) {
try {
/ / 确定销售订单范围 、 19648
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
if ( deleteU8cDataUtilEntities . size ( ) > 0 ) {
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 1 00) ;
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 5 00) ;
for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities1 = lists . get ( i ) ;
String concatenatedIds = deleteU8cDataUtilEntities1 . stream ( ) . map ( DeleteU8cDataUtilEntity : : getCsaleid ) . map ( csaleid - > " ' " + csaleid + " ' " ) . collect ( Collectors . joining ( " , " ) ) ;
@ -1370,6 +1401,12 @@ public class DeleteU8cDataUtil {
deleteU8cDataUtilDao . updateCdeptid ( updateSoSaleCdeptId ) ;
}
}
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
if ( deleteU8cDataUtilEntities2 ! = null & & deleteU8cDataUtilEntities2 . size ( ) > 0 ) {
/ / 还存在部门字段错误的数据行 , 重新执行修复 , 确保目标数据被完全修复 !
repairSoSaleDepartment ( ) ;
}
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
@ -1381,7 +1418,8 @@ public class DeleteU8cDataUtil {
public void salesOrderReviewV2 ( ) {
try {
/ / 确定销售订单范围 、 19648
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
/ / 注意 ⚠ ️这里只能审核已经修复完毕的销售订单 ! 并且处理自由状态
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V3 ( ) ;
if ( deleteU8cDataUtilEntities . size ( ) > 0 ) {
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 100 ) ;
for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
@ -1391,7 +1429,7 @@ public class DeleteU8cDataUtil {
DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo ( ) ;
deleteSoSaleVo . setDataSourceCode ( " lets_u8c " ) ;
deleteSoSaleVo . setCsaleids ( concatenatedIds ) ;
deleteSoSaleVo . setFstatus ( " 1 " ) ;
deleteSoSaleVo . setFstatus ( " 1 " ) ; / / 自由状态
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao . querySoSaleByDeletev2 ( deleteSoSaleVo ) ;
Map < String , List < DeleteU8cDataUtilEntity > > deleteU8cDataUtilEntitiesMap = groupByDbilldatev2 ( deleteU8cDataUtilEntities2 ) ;
if ( deleteU8cDataUtilEntitiesMap . size ( ) > 0 ) {
@ -1422,14 +1460,18 @@ public class DeleteU8cDataUtil {
}
}
/ / 再次确认是否存在已经修复完毕 , 但未审核的销售订单
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities22All = new ArrayList < > ( ) ;
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V 2 ( ) ;
if ( deleteU8cDataUtilEntities2 ! = null ) {
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 999 ) ;
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V 3 ( ) ;
if ( deleteU8cDataUtilEntities2 ! = null & & deleteU8cDataUtilEntities2 . size ( ) > 0 ) {
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities 2 , 999 ) ;
for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities1 = lists . get ( i ) ;
String concatenatedIds = deleteU8cDataUtilEntities1 . stream ( ) . map ( DeleteU8cDataUtilEntity : : getCsaleid ) . map ( csaleid - > " ' " + csaleid + " ' " ) . collect ( Collectors . joining ( " , " ) ) ;
if ( concatenatedIds = = null | | " " . equals ( concatenatedIds . trim ( ) ) ) {
throw new Exception ( " concatenatedIds == null || \" \" .equals(concatenatedIds) " ) ;
}
DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo ( ) ;
deleteSoSaleVo . setDataSourceCode ( " lets_u8c " ) ;
deleteSoSaleVo . setCsaleids ( concatenatedIds ) ;
@ -1452,89 +1494,89 @@ public class DeleteU8cDataUtil {
*
* @author liuyang
* /
public void unApprovalDeleteAccountsReceivable ( ) {
try {
/ / 确定销售订单范围 、 19648
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
if ( deleteU8cDataUtilEntities . size ( ) > 0 ) {
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 500 ) ;
for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities1 = lists . get ( i ) ;
String concatenatedIds = deleteU8cDataUtilEntities1 . stream ( ) . map ( DeleteU8cDataUtilEntity : : getCsaleid ) . map ( csaleid - > " ' " + csaleid + " ' " ) . collect ( Collectors . joining ( " , " ) ) ;
/ / 查询需要弃审的应收单
Map < String , List < Map < String , String > > > mapList = new HashMap ( ) ;
List < Map < String , String > > mapList1 = new ArrayList < > ( ) ;
DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo ( ) ;
deleteSoSaleVo . setCsaleid ( concatenatedIds ) ;
deleteSoSaleVo . setSpzt ( " 1 " ) ;
List < ArapDjzbVo > arapDjzbVos = deleteU8cDataUtilDao . abandonmentAccountsReceivableDocV2 ( deleteSoSaleVo ) ;
if ( arapDjzbVos ! = null & & arapDjzbVos . size ( ) > 0 ) {
for ( int j = 0 ; j < arapDjzbVos . size ( ) ; j + + ) {
ArapDjzbVo arapDjzbVo = arapDjzbVos . get ( j ) ;
Map < String , String > stringStringMap = new HashMap < > ( ) ;
stringStringMap . put ( " djbh " , arapDjzbVo . getDjbh ( ) ) ; / / 单据编码
stringStringMap . put ( " dwbm " , arapDjzbVo . getUnitcode ( ) ) ; / / 公司编码
stringStringMap . put ( " operatedate " , arapDjzbVo . getDjrq ( ) ) ; / / 单据日期
stringStringMap . put ( " operatorid " , " 18846145294 " ) ; / / 操作人编码
mapList1 . add ( stringStringMap ) ;
}
}
if ( mapList1 . size ( ) > 0 ) {
mapList . put ( " bills " , mapList1 ) ;
/ / sendU8C ( " http://39.170.109.90:8088/u8cloud/api/arap/ys/unaudit " , JSON . toJSONString ( mapList ) , mapList1 . size ( ) ) ;
}
/ / 删除应收单
DeleteSoSaleVo deleteSoSaleVo2 = new DeleteSoSaleVo ( ) ;
deleteSoSaleVo2 . setCsaleid ( concatenatedIds ) ;
/ / deleteSoSaleVo2 . setSpzt ( " 1 " ) ;
deleteSoSaleVo2 . setSpztnull ( " 1 " ) ; / / a . spzt is null
List < ArapDjzbVo > arapDjzbVos2 = deleteU8cDataUtilDao . abandonmentAccountsReceivableDocV2 ( deleteSoSaleVo2 ) ;
for ( int j = 0 ; j < arapDjzbVos2 . size ( ) ; j + + ) {
ArapDjzbVo arapDjzbVo = arapDjzbVos2 . get ( j ) ;
Map < String , String > stringStringMap = new HashMap < > ( ) ;
stringStringMap . put ( " coperator " , " tbadmin " ) ;
Map < String , String > stringStringMap2 = new HashMap < > ( ) ;
stringStringMap2 . put ( " dwbm " , arapDjzbVo . getUnitcode ( ) ) ;
stringStringMap2 . put ( " djbh_from " , arapDjzbVo . getDjbh ( ) ) ;
stringStringMap2 . put ( " djbh_to " , arapDjzbVo . getDjbh ( ) ) ;
Map < String , Map < String , String > > stringStringMap3 = new HashMap < > ( ) ;
stringStringMap3 . put ( " deleteinfo " , stringStringMap ) ;
stringStringMap3 . put ( " queryinfo " , stringStringMap2 ) ;
/ / sendU8C ( " http://39.170.109.90:8088/u8cloud/api/arap/ys/delete " , JSON . toJSONString ( stringStringMap3 ) , 1 ) ;
}
}
}
/ / 判断是否存在失败的应收单
List < ArapDjzbVo > arapDjzbVosAll = new ArrayList < > ( ) ;
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
if ( deleteU8cDataUtilEntities2 . size ( ) > 0 ) {
List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities2 , 999 ) ;
for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities1 = lists . get ( i ) ;
String concatenatedIds = deleteU8cDataUtilEntities1 . stream ( ) . map ( DeleteU8cDataUtilEntity : : getCsaleid ) . map ( csaleid - > " ' " + csaleid + " ' " ) . collect ( Collectors . joining ( " , " ) ) ;
DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo ( ) ;
deleteSoSaleVo . setCsaleid ( concatenatedIds ) ;
deleteSoSaleVo . setSpzt ( " 0,1,2,null " ) ;
List < ArapDjzbVo > arapDjzbVos = deleteU8cDataUtilDao . abandonmentAccountsReceivableDocV2 ( deleteSoSaleVo ) ;
arapDjzbVosAll . addAll ( arapDjzbVos ) ;
}
}
if ( arapDjzbVosAll . size ( ) > 0 ) {
unApprovalDeleteAccountsReceivable ( ) ;
}
} catch ( Exception e ) {
e . printStackTrace ( ) ;
}
}
/ / public void unApprovalDeleteAccountsReceivable ( ) {
/ / try {
/ / / / 确定销售订单范围 、 19648
/ / List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
/ / if ( deleteU8cDataUtilEntities . size ( ) > 0 ) {
/ / List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities , 500 ) ;
/ / for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
/ / List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities1 = lists . get ( i ) ;
/ / String concatenatedIds = deleteU8cDataUtilEntities1 . stream ( ) . map ( DeleteU8cDataUtilEntity : : getCsaleid ) . map ( csaleid - > " ' " + csaleid + " ' " ) . collect ( Collectors . joining ( " , " ) ) ;
/ / / / 查询需要弃审的应收单
/ / Map < String , List < Map < String , String > > > mapList = new HashMap ( ) ;
/ / List < Map < String , String > > mapList1 = new ArrayList < > ( ) ;
/ /
/ / DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo ( ) ;
/ / deleteSoSaleVo . setCsaleid ( concatenatedIds ) ;
/ / deleteSoSaleVo . setSpzt ( " 1 " ) ;
/ / List < ArapDjzbVo > arapDjzbVos = deleteU8cDataUtilDao . abandonmentAccountsReceivableDocV2 ( deleteSoSaleVo ) ;
/ / if ( arapDjzbVos ! = null & & arapDjzbVos . size ( ) > 0 ) {
/ / for ( int j = 0 ; j < arapDjzbVos . size ( ) ; j + + ) {
/ / ArapDjzbVo arapDjzbVo = arapDjzbVos . get ( j ) ;
/ /
/ / Map < String , String > stringStringMap = new HashMap < > ( ) ;
/ / stringStringMap . put ( " djbh " , arapDjzbVo . getDjbh ( ) ) ; / / 单据编码
/ / stringStringMap . put ( " dwbm " , arapDjzbVo . getUnitcode ( ) ) ; / / 公司编码
/ / stringStringMap . put ( " operatedate " , arapDjzbVo . getDjrq ( ) ) ; / / 单据日期
/ / stringStringMap . put ( " operatorid " , " 18846145294 " ) ; / / 操作人编码
/ / mapList1 . add ( stringStringMap ) ;
/ / }
/ / }
/ /
/ / if ( mapList1 . size ( ) > 0 ) {
/ / mapList . put ( " bills " , mapList1 ) ;
/ / / / sendU8C ( " http://39.170.109.90:8088/u8cloud/api/arap/ys/unaudit " , JSON . toJSONString ( mapList ) , mapList1 . size ( ) ) ;
/ / }
/ /
/ / / / 删除应收单
/ / DeleteSoSaleVo deleteSoSaleVo2 = new DeleteSoSaleVo ( ) ;
/ / deleteSoSaleVo2 . setCsaleid ( concatenatedIds ) ;
/ / / / deleteSoSaleVo2 . setSpzt ( " 1 " ) ;
/ / deleteSoSaleVo2 . setSpztnull ( " 1 " ) ; / / a . spzt is null
/ / List < ArapDjzbVo > arapDjzbVos2 = deleteU8cDataUtilDao . abandonmentAccountsReceivableDocV2 ( deleteSoSaleVo2 ) ;
/ / for ( int j = 0 ; j < arapDjzbVos2 . size ( ) ; j + + ) {
/ / ArapDjzbVo arapDjzbVo = arapDjzbVos2 . get ( j ) ;
/ /
/ / Map < String , String > stringStringMap = new HashMap < > ( ) ;
/ / stringStringMap . put ( " coperator " , " tbadmin " ) ;
/ /
/ / Map < String , String > stringStringMap2 = new HashMap < > ( ) ;
/ / stringStringMap2 . put ( " dwbm " , arapDjzbVo . getUnitcode ( ) ) ;
/ / stringStringMap2 . put ( " djbh_from " , arapDjzbVo . getDjbh ( ) ) ;
/ / stringStringMap2 . put ( " djbh_to " , arapDjzbVo . getDjbh ( ) ) ;
/ /
/ / Map < String , Map < String , String > > stringStringMap3 = new HashMap < > ( ) ;
/ / stringStringMap3 . put ( " deleteinfo " , stringStringMap ) ;
/ / stringStringMap3 . put ( " queryinfo " , stringStringMap2 ) ;
/ / / / sendU8C ( " http://39.170.109.90:8088/u8cloud/api/arap/ys/delete " , JSON . toJSONString ( stringStringMap3 ) , 1 ) ;
/ / }
/ / }
/ / }
/ /
/ / / / 判断是否存在失败的应收单
/ / List < ArapDjzbVo > arapDjzbVosAll = new ArrayList < > ( ) ;
/ / List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao . cancelSignatureSoSaleReadExcel20250528V2 ( ) ;
/ / if ( deleteU8cDataUtilEntities2 . size ( ) > 0 ) {
/ / List < List < DeleteU8cDataUtilEntity > > lists = SplitListByCountUtil . splitListByCount ( deleteU8cDataUtilEntities2 , 999 ) ;
/ / for ( int i = 0 ; i < lists . size ( ) ; i + + ) {
/ / List < DeleteU8cDataUtilEntity > deleteU8cDataUtilEntities1 = lists . get ( i ) ;
/ / String concatenatedIds = deleteU8cDataUtilEntities1 . stream ( ) . map ( DeleteU8cDataUtilEntity : : getCsaleid ) . map ( csaleid - > " ' " + csaleid + " ' " ) . collect ( Collectors . joining ( " , " ) ) ;
/ /
/ / DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo ( ) ;
/ / deleteSoSaleVo . setCsaleid ( concatenatedIds ) ;
/ / deleteSoSaleVo . setSpzt ( " 0,1,2,null " ) ;
/ / List < ArapDjzbVo > arapDjzbVos = deleteU8cDataUtilDao . abandonmentAccountsReceivableDocV2 ( deleteSoSaleVo ) ;
/ / arapDjzbVosAll . addAll ( arapDjzbVos ) ;
/ / }
/ / }
/ / if ( arapDjzbVosAll . size ( ) > 0 ) {
/ / unApprovalDeleteAccountsReceivable ( ) ;
/ / }
/ / } catch ( Exception e ) {
/ / e . printStackTrace ( ) ;
/ / }
/ / }
/ * *
* 汇总相同时间 + 公司的单据