diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java index 7e458e3fe4..e42c2e0042 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java @@ -248,4 +248,9 @@ public interface BusSalesOrderFeign { @GetMapping("/selectOrderByContractNo") @ResponseBody ResultBean selectOrderByContractNo(@RequestParam("contractNo")String contractNo); + + @ApiOperation("销售订单的虚拟订金删除") + @DeleteMapping("/deleteVirtualDepositList") + @ResponseBody + ResultBean deleteVirtualDepositList(@RequestParam("saleOrderSid") String saleOrderSid, @RequestParam("virtualOrderSid") String virtualOrderSid, @RequestParam("depositRecordSid") String depositRecordSid); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java index 88f37de443..d656ba09ea 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java @@ -224,4 +224,9 @@ public class BusSalesOrderFeignFallback implements BusSalesOrderFeign { public ResultBean selectOrderByContractNo(String contractNo) { return null; } + + @Override + public ResultBean deleteVirtualDepositList(String saleOrderSid, String virtualOrderSid, String depositRecordSid) { + return null; + } } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdeposit/app/AppBusSalesOrderDepositListDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdeposit/app/AppBusSalesOrderDepositListDto.java index 9d13d6b882..dc23fb12ad 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdeposit/app/AppBusSalesOrderDepositListDto.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdeposit/app/AppBusSalesOrderDepositListDto.java @@ -28,4 +28,7 @@ public class AppBusSalesOrderDepositListDto implements Dto { private String price; @ApiModelProperty(value = "委托书") private List entrustImage; + + @ApiModelProperty("虚拟订金使用记录") + private String useDepositRecordSid; } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.java index 11af2845c5..2fa1787973 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.java @@ -85,4 +85,6 @@ public interface BusDepositFictitiousMapper extends BaseMapper getList(String sid); String selectDeposit(String depositBillNo); + + List getStringList(String salesOrderSid); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.xml index 4d2951f396..b0cf20b6a9 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousMapper.xml @@ -56,4 +56,12 @@ from bus_deposit_fictitious bf where depositBillNo = #{depositBillNo} + + \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousService.java index 641742b730..d4408cac4b 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousService.java @@ -106,4 +106,8 @@ public class BusDepositFictitiousService extends MybatisBaseService getStringList(String salesOrderSid) { + return baseMapper.getStringList(salesOrderSid); + } } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java index 1575dbcbe4..f153799f5a 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java @@ -301,4 +301,9 @@ public class BusSalesOrderRest implements BusSalesOrderFeign { public ResultBean selectOrderByContractNo(String contractNo) { return busSalesOrderService.selectOrderByContractNo(contractNo); } + + @Override + public ResultBean deleteVirtualDepositList(String saleOrderSid, String virtualOrderSid, String depositRecordSid) { + return busSalesOrderService.deleteVirtualDepositList(saleOrderSid, virtualOrderSid,depositRecordSid); + } } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java index 2aa04194bb..c28b16f3f8 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java @@ -3262,4 +3262,26 @@ public class BusSalesOrderService extends MybatisBaseService @@ -208,16 +206,48 @@ public class BusSalesOrderDepositService extends MybatisBaseService listVos = dto.getVirtualOrderList(); listVos.removeAll(Collections.singleton(null)); - for (AppBusSalesOrderDepositListDto listDto : listVos) { - //查询付款人是否和客户一样 - BusDeposit busDeposit = busDepositService.selectByBillSid(listDto.getDepositBillSid()); - if (!busSalesOrder.getCustomerName().equals(busDeposit.getDraweeName())) { - if (listDto.getEntrustImage().isEmpty()) { - return rb.setMsg("选择的虚拟订金单中有付款人与该客户不一致,请上传款项支付委托书"); + if (!listVos.isEmpty()) { + //判断是否存在重复的虚拟订金单 + List depositNoList = listVos.stream().map(v->v.getDepositBillNo()).collect(Collectors.toList()); + Set set = new HashSet<>(depositNoList); + if(depositNoList.size() != set.size()){ + return rb.setMsg("存在相同虚拟订金单,请刷新后重新添加"); + } + //查询存在使用记录sid的与数据库中该销售订单的虚拟订金使用记录的是否一致,若不一致则提示刷新后重试。若一致则继续 + List recordSidList = listVos.stream().filter(v-> null != v.getUseDepositRecordSid()).filter(v->!v.getUseDepositRecordSid().isEmpty()).map(v->v.getUseDepositRecordSid()).collect(Collectors.toList()); + Set setRecord = new HashSet<>(recordSidList); + if(recordSidList.size() != setRecord.size()) { + return rb.setMsg("存在相同虚拟订金单,请刷新后重新添加"); + } + //查询该销售订单下的所有虚拟订金单的信息 + List recordSidLists = busDepositFictitiousService.getStringList(salesOrderSid); + if(recordSidList.size() != recordSidLists.size()){ + return rb.setMsg("存在缓存数据,请刷新后再进行保存操作"); + }else{ + recordSidList.removeAll(recordSidLists); + if(recordSidList.size()>0){ + return rb.setMsg("存在缓存数据,请刷新后再进行保存操作"); + } + recordSidList = listVos.stream().filter(v-> null != v.getUseDepositRecordSid()).filter(v->!v.getUseDepositRecordSid().isEmpty()).map(v->v.getUseDepositRecordSid()).collect(Collectors.toList()); + recordSidLists.removeAll(recordSidList); + if(recordSidLists.size()>0){ + return rb.setMsg("存在缓存数据,请刷新后再进行保存操作"); } } - makeUpDecimal = makeUpDecimal.add(new BigDecimal(listDto.getPrice())); + + for (AppBusSalesOrderDepositListDto listDto : listVos) { + //查询付款人是否和客户一样 + BusDeposit busDeposit = busDepositService.selectByBillSid(listDto.getDepositBillSid()); + if (!busSalesOrder.getCustomerName().equals(busDeposit.getDraweeName())) { + if (listDto.getEntrustImage().isEmpty()) { + return rb.setMsg("选择的虚拟订金单中有付款人与该客户不一致,请上传款项支付委托书"); + } + } + makeUpDecimal = makeUpDecimal.add(new BigDecimal(listDto.getPrice())); + } + } + } BusSalesOrderDeposit busSalesOrderDeposit = baseMapper.selectByOrderSid(salesOrderSid); String depositSid = ""; @@ -341,8 +371,8 @@ public class BusSalesOrderDepositService extends MybatisBaseService> stringList = finCollectionConfirmationFeign.billeNoList(); - if(stringList.getSuccess()){ - qw.in("bmd.billNo",stringList.getData()); + if (stringList.getSuccess()) { + qw.in("bmd.billNo", stringList.getData()); } } qw.eq("bmd.nodeState", FlowComment.SETTLE.getRemark());//已办结 @@ -371,7 +401,7 @@ public class BusSalesOrderDepositService extends MybatisBaseService> getDepositList(@RequestBody PagerQuery pagerQuery); + @ApiOperation("虚拟订金删除") + @DeleteMapping("/deleteVirtualDepositList") + @ResponseBody + ResultBean deleteVirtualDepositList(@RequestParam("saleOrderSid") String saleOrderSid, @RequestParam("virtualOrderSid") String virtualOrderSid, @RequestParam("depositRecordSid") String depositRecordSid); + /*-----------------------------------------补充说明------------------------------------------*/ @ApiOperation("保存销售订单补充说明") diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeignFallback.java index 1d2edaa526..ee8d266586 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeignFallback.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/AppBusSalesOrderFeignFallback.java @@ -182,6 +182,11 @@ public class AppBusSalesOrderFeignFallback implements AppBusSalesOrderFeign { return null; } + @Override + public ResultBean deleteVirtualDepositList(String saleOrderSid, String virtualOrderSid, String depositRecordSid) { + return null; + } + @Override public ResultBean updateNodesBySid(OrderRemarksDto dto) { return null; diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/depositinfo/DepositInfoListDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/depositinfo/DepositInfoListDto.java index 69099fc1bf..34f4f63984 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/depositinfo/DepositInfoListDto.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/depositinfo/DepositInfoListDto.java @@ -32,5 +32,7 @@ public class DepositInfoListDto implements Dto { private String price; @ApiModelProperty(value = "委托书") private List entrustImage; + @ApiModelProperty("虚拟订金单使用记录sid") + private String useDepositRecordSid; } diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderRest.java index 2b81cc6d98..f59913bb81 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderRest.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderRest.java @@ -269,6 +269,11 @@ public class AppBusSalesOrderRest implements AppBusSalesOrderFeign { return appBusSalesOrderService.getDepositList(pagerQuery); } + @Override + public ResultBean deleteVirtualDepositList(String saleOrderSid, String virtualOrderSid, String depositRecordSid) { + return appBusSalesOrderService.deleteVirtualDepositList(saleOrderSid,virtualOrderSid,depositRecordSid); + } + @Override public ResultBean updateNodesBySid(OrderRemarksDto dto) { return appBusSalesOrderService.updateNodesBySid(dto); diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderService.java index f3b68abd59..09d4dc4599 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/saleOrders/AppBusSalesOrderService.java @@ -595,4 +595,13 @@ public class AppBusSalesOrderService { ResultBean resultBean = busSalesOrderFeign.saveSaleOrderInputVin(vinDto); return resultBean; } + + public ResultBean deleteVirtualDepositList(String saleOrderSid, String virtualOrderSid, String depositRecordSid) { + ResultBean rb = ResultBean.fireFail(); + ResultBean resultBean = busSalesOrderFeign.deleteVirtualDepositList(saleOrderSid, virtualOrderSid, depositRecordSid); + if(!resultBean.getSuccess()){ + return rb.setMsg(resultBean.getMsg()); + } + return rb.success(); + } } \ No newline at end of file