diff --git a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/DeleteU8cDataUtilTest4.java b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/DeleteU8cDataUtilTest4.java index d8322c5a..fad3cde5 100644 --- a/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/DeleteU8cDataUtilTest4.java +++ b/buildpackage/src/test/java/com/hzya/frame/plugin/lets/util/DeleteU8cDataUtilTest4.java @@ -31,7 +31,36 @@ public class DeleteU8cDataUtilTest4 { //销售出库单签字 已测试 // deleteU8cDataUtil.saleOutSign("'0001A110000000001TH6', '0001A1100000000VKCOK'"); - deleteU8cDataUtil.abandoningReviewAccReceDoc(); +// deleteU8cDataUtil.abandoningReviewAccReceDoc(); + +// deleteU8cDataUtil.cancelSignatureSoSaleReadExcel20250528V2(); +// deleteU8cDataUtil.abandonmentReviewSoSaleinvoice2505282107(); + +// deleteU8cDataUtil.cancelSignatureSoSaleReadExcel2505282140V2(); + +// deleteU8cDataUtil.repairSoSaleDepartment(); + +// deleteU8cDataUtil.salesOrderReviewV2(); + +// deleteU8cDataUtil.cancelSignatureSoSaleReadExcel20250528V2(); + +// deleteU8cDataUtil.repairSoSaleDepartment(); + +// deleteU8cDataUtil.salesOrderReviewV2(); + +// deleteU8cDataUtil.repairSoSaleDepartment(); + + + + + //弃审应收单 +// deleteU8cDataUtil.abandoningReviewAccReceDocV2(); + //弃审+删除发票 +// deleteU8cDataUtil.abandonmentReviewSoSaleinvoice2505282107(); + //取消签字+删除销售出库单 +// deleteU8cDataUtil.cancelSignatureSoSaleReadExcel20250528V2(); + //取消审批销售订单+删除销售订单 +// deleteU8cDataUtil.cancelSignatureSoSaleReadExcel2505282140V2(); } catch (Exception e) { e.printStackTrace(); } diff --git a/service/src/main/java/com/hzya/frame/deletedata/DeleteU8cDataUtil.java b/service/src/main/java/com/hzya/frame/deletedata/DeleteU8cDataUtil.java index bfb68424..cc44b019 100644 --- a/service/src/main/java/com/hzya/frame/deletedata/DeleteU8cDataUtil.java +++ b/service/src/main/java/com/hzya/frame/deletedata/DeleteU8cDataUtil.java @@ -21,6 +21,7 @@ import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -113,13 +114,22 @@ public class DeleteU8cDataUtil { // repairSoSaleDepartment(); //销售订单审核 // salesOrderReviewV2(); + + //弃审应收单 +// abandoningReviewAccReceDocV2(); + //弃审+删除发票 +// abandonmentReviewSoSaleinvoice2505282107(); + //取消签字+删除销售出库单 +// cancelSignatureSoSaleReadExcel20250528V2(); + //取消审批销售订单+删除销售订单 +// cancelSignatureSoSaleReadExcel2505282140V2(); } catch (Exception e) { e.printStackTrace(); // Thread.currentThread().interrupt(); // throw new RuntimeException("等待线程完成时中断", e); } } - }, "U8C单据逻辑处理:销售订单审核"); + }, "U8C单据逻辑处理:应收单、销售发票、销售出库单、销售订单"); thread000.start(); } @@ -1096,9 +1106,8 @@ public class DeleteU8cDataUtil { */ public void cancelSignatureSoSaleReadExcel20250528V2() { try { - //确定销售订单范围、19648 - List deleteU8cDataUtilEntities = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2(); - + //确定销售订单范围 + List deleteU8cDataUtilEntities = deleteU8cDataUtilDao.querySoSaleByDbilldate(); //按100行拆分 List> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 100); if (lists.size() > 0) { @@ -1200,8 +1209,8 @@ public class DeleteU8cDataUtil { */ public void abandonmentReviewSoSaleinvoice2505282107() { try { - //确定销售订单范围、19648 - List deleteU8cDataUtilEntities = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2(); + //确定销售订单范围 + List deleteU8cDataUtilEntities = deleteU8cDataUtilDao.querySoSaleByDbilldate(); List> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 500); if (lists.size() > 0) { for (int i = 0; i < lists.size(); i++) { @@ -1287,7 +1296,9 @@ public class DeleteU8cDataUtil { soSaleinvoiceEntity2.setDataSourceCode("lets_u8c"); soSaleinvoiceEntity2.setCsaleid(concatenatedIds); List soSaleinvoiceEntities2 = deleteU8cDataUtilDao.querySoSaleinvoiceByCancelApprovalV2(soSaleinvoiceEntity2); - soSaleinvoiceEntities2All.addAll(soSaleinvoiceEntities2); + if (soSaleinvoiceEntities2 != null && soSaleinvoiceEntities2.size() > 0) { + soSaleinvoiceEntities2All.addAll(soSaleinvoiceEntities2); + } } if (soSaleinvoiceEntities2All.size() > 0) { Thread.sleep(10000); @@ -1299,12 +1310,12 @@ public class DeleteU8cDataUtil { } /** - * 销售订单取消签字 + * 销售订单取消签字+删除 */ public void cancelSignatureSoSaleReadExcel2505282140V2() { try { - //确定销售订单范围、19648 - List deleteU8cDataUtilEntities = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2(); + //确定销售订单范围 + List deleteU8cDataUtilEntities = deleteU8cDataUtilDao.querySoSaleByDbilldate(); if (deleteU8cDataUtilEntities.size() > 0) { List> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 500); for (int i = 0; i < lists.size(); i++) { @@ -1342,22 +1353,52 @@ public class DeleteU8cDataUtil { sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleorder/unapprove", JSON.toJSONString(jsonRootBeanCancelSignature), vreceiptcodeList.size()); } } + + //销售订单删除 + DeleteSoSaleVo deleteSoSaleVo2 = new DeleteSoSaleVo(); + deleteSoSaleVo2.setDataSourceCode("lets_u8c"); + deleteSoSaleVo2.setCsaleids(concatenatedIds); + deleteSoSaleVo2.setFstatus("1"); + List deleteU8cDataUtilEntities3 = deleteU8cDataUtilDao.querySoSaleByDeletev2(deleteSoSaleVo2); + Map> deleteU8cDataUtilEntitiesMap2 = groupByDbilldatev2(deleteU8cDataUtilEntities3); + if (deleteU8cDataUtilEntitiesMap2.size() > 0) { + for (Map.Entry> entry : deleteU8cDataUtilEntitiesMap2.entrySet()) { + String key = entry.getKey(); + List valueList = entry.getValue(); + List vreceiptcodeList = valueList.stream().map(DeleteU8cDataUtilEntity::getVreceiptcode).collect(Collectors.toList()); + + String[] split = key.split("@@@@"); + + Queryinfo queryinfo = new Queryinfo(); + queryinfo.setCorp(split[1]); + queryinfo.setDate_begin(split[0]); + queryinfo.setDate_end(split[0]); + queryinfo.setCode(vreceiptcodeList); + + Deleteinfo deleteinfo = new Deleteinfo(); + deleteinfo.setCoperator("tbadmin"); + + JsonRootBean jsonRootBean = new JsonRootBean(); + jsonRootBean.setDeleteinfo(deleteinfo); + jsonRootBean.setQueryinfo(queryinfo); + sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleorder/delete", JSON.toJSONString(jsonRootBean), vreceiptcodeList.size()); + } + } } } List deleteU8cDataUtilEntities22All = new ArrayList<>(); - List deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2(); - if (deleteU8cDataUtilEntities2 != null) { - List> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 999); - for (int i = 0; i < lists.size(); i++) { - List deleteU8cDataUtilEntities1 = lists.get(i); - String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(",")); + List> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 999); + for (int i = 0; i < lists.size(); i++) { + List deleteU8cDataUtilEntities1 = lists.get(i); + String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(",")); - DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo(); - deleteSoSaleVo.setDataSourceCode("lets_u8c"); - deleteSoSaleVo.setCsaleids(concatenatedIds); - deleteSoSaleVo.setFstatus("2,6"); - List deleteU8cDataUtilEntities22 = deleteU8cDataUtilDao.querySoSaleByDeletev2(deleteSoSaleVo); + DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo(); + deleteSoSaleVo.setDataSourceCode("lets_u8c"); + deleteSoSaleVo.setCsaleids(concatenatedIds); +// deleteSoSaleVo.setFstatus("2,6"); + List deleteU8cDataUtilEntities22 = deleteU8cDataUtilDao.querySoSaleByDeletev2(deleteSoSaleVo); + if (deleteU8cDataUtilEntities22 != null && deleteU8cDataUtilEntities22.size() > 0) { deleteU8cDataUtilEntities22All.addAll(deleteU8cDataUtilEntities22); } } @@ -1593,4 +1634,69 @@ public class DeleteU8cDataUtil { // } // return resultMap; // } + + /** + * 弃审应收单 + * + * @author liuyang + */ + public void abandoningReviewAccReceDocV2() { + try { + //查询指定范围内的销售订单 + List deleteU8cDataUtilEntities = deleteU8cDataUtilDao.querySoSaleByDbilldate(); + if (deleteU8cDataUtilEntities.size() > 0) { + List> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 100); + for (int i = 0; i < lists.size(); i++) { + List 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("1"); + List arapDjzbVos = deleteU8cDataUtilDao.abandonmentAccountsReceivableDocV2(deleteSoSaleVo); + if (arapDjzbVos.size() > 0) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String dateString = sdf.format(new Date()); + + List> mapList = new ArrayList<>(); + + for (int j = 0; j < arapDjzbVos.size(); j++) { + ArapDjzbVo arapDjzbVo = arapDjzbVos.get(j); + Map stringStringMap = new HashMap<>(); + stringStringMap.put("djbh", arapDjzbVo.getDjbh());//单据编码 + stringStringMap.put("dwbm", arapDjzbVo.getUnitcode());//公司编码 + stringStringMap.put("operatorid", "18846145294");//操作人编码 + stringStringMap.put("operatedate", dateString);//操作日期 + mapList.add(stringStringMap); + } + + Map>> stringStringMap2 = new HashMap<>(); + stringStringMap2.put("bills", mapList); + sendU8C("http://39.170.109.90:8088/u8cloud/api/arap/ys/unaudit", JSON.toJSONString(stringStringMap2), 1); + } + } + + List arapDjzbVosAll = new ArrayList<>(); + List> lists2 = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 1000); + for (int i = 0; i < lists2.size(); i++) { + List deleteU8cDataUtilEntities1 = lists2.get(i); + String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(",")); + DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo(); + deleteSoSaleVo.setCsaleid(concatenatedIds); + deleteSoSaleVo.setSpzt("1"); + List arapDjzbVos = deleteU8cDataUtilDao.abandonmentAccountsReceivableDocV2(deleteSoSaleVo); + if (arapDjzbVos != null && arapDjzbVos.size() > 0) { + arapDjzbVosAll.addAll(arapDjzbVos); + } + } + if (arapDjzbVosAll.size() > 0) { + Thread.sleep(10000); + abandoningReviewAccReceDocV2(); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + } } \ No newline at end of file diff --git a/service/src/main/java/com/hzya/frame/deletedata/cancelsignature/JsonRootBeanCancelSignature.java b/service/src/main/java/com/hzya/frame/deletedata/cancelsignature/JsonRootBeanCancelSignature.java index 4c010e1b..5bdc4ecb 100644 --- a/service/src/main/java/com/hzya/frame/deletedata/cancelsignature/JsonRootBeanCancelSignature.java +++ b/service/src/main/java/com/hzya/frame/deletedata/cancelsignature/JsonRootBeanCancelSignature.java @@ -5,6 +5,7 @@ public class JsonRootBeanCancelSignature { private QueryinfoCancelSignature queryinfo; private ApproveinfoCancelSignature approveinfo; + public QueryinfoCancelSignature getQueryinfo() { return queryinfo; } diff --git a/service/src/main/java/com/hzya/frame/deletedata/dao/DeleteU8cDataUtilDao.java b/service/src/main/java/com/hzya/frame/deletedata/dao/DeleteU8cDataUtilDao.java index 012e9fac..86aa43f5 100644 --- a/service/src/main/java/com/hzya/frame/deletedata/dao/DeleteU8cDataUtilDao.java +++ b/service/src/main/java/com/hzya/frame/deletedata/dao/DeleteU8cDataUtilDao.java @@ -128,4 +128,11 @@ public interface DeleteU8cDataUtilDao extends IBaseDao cancelSignatureSoSaleReadExcel20250528V3() throws Exception; + + /** + * 查询已审核的应收单 + * + * @author liuyang + */ + List querySoSaleByDbilldate() throws Exception; } \ No newline at end of file diff --git a/service/src/main/java/com/hzya/frame/deletedata/dao/impl/DeleteU8cDataUtilDaoImpl.java b/service/src/main/java/com/hzya/frame/deletedata/dao/impl/DeleteU8cDataUtilDaoImpl.java index d8dbc09b..6223169a 100644 --- a/service/src/main/java/com/hzya/frame/deletedata/dao/impl/DeleteU8cDataUtilDaoImpl.java +++ b/service/src/main/java/com/hzya/frame/deletedata/dao/impl/DeleteU8cDataUtilDaoImpl.java @@ -120,4 +120,10 @@ public class DeleteU8cDataUtilDaoImpl extends MybatisGenericDao cancelSignatureSoSaleReadExcel20250528V3() throws Exception { return query("com.hzya.frame.deletedata.dao.impl.DeleteU8cDataUtilDaoImpl.cancelSignatureSoSaleReadExcel20250528V3", new DeleteU8cDataUtilEntity()); } + + @DS("lets_u8c") + @Override + public List querySoSaleByDbilldate() throws Exception { + return query("com.hzya.frame.deletedata.dao.impl.DeleteU8cDataUtilDaoImpl.querySoSaleByDbilldate", new DeleteU8cDataUtilEntity()); + } } \ No newline at end of file diff --git a/service/src/main/java/com/hzya/frame/deletedata/entity/DeleteU8cDataUtilEntity.xml b/service/src/main/java/com/hzya/frame/deletedata/entity/DeleteU8cDataUtilEntity.xml index d9ec94e9..6d21cf04 100644 --- a/service/src/main/java/com/hzya/frame/deletedata/entity/DeleteU8cDataUtilEntity.xml +++ b/service/src/main/java/com/hzya/frame/deletedata/entity/DeleteU8cDataUtilEntity.xml @@ -415,10 +415,7 @@ AND a.spzt in (${spzt}) - - AND a.spzt is null - - AND a.spzt in (${spzt}) + AND a.djdl = 'ys' AND a.dr = 0 @@ -477,5 +474,19 @@ and a.fstatus in (1) -- and a.csaleid = '1015A11000000000SIO8' + + +