From d76e1e8cab7cdc9d845a53340919d7808d138535 Mon Sep 17 00:00:00 2001 From: "453530270@qq.com" Date: Mon, 28 Aug 2023 18:08:41 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=A7=94=E6=89=98=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E7=9A=84=E8=AE=A2=E5=8D=95=E6=98=8E=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/AdminAccountCloseController.java | 7 +- .../szwh/service/AccountCloseService.java | 2 +- .../service/impl/AccountCloseServiceImpl.java | 139 +++++++++++------- 3 files changed, 93 insertions(+), 55 deletions(-) diff --git a/src/main/java/cn/chjyj/szwh/controller/admin/AdminAccountCloseController.java b/src/main/java/cn/chjyj/szwh/controller/admin/AdminAccountCloseController.java index f95c073..255bb4e 100644 --- a/src/main/java/cn/chjyj/szwh/controller/admin/AdminAccountCloseController.java +++ b/src/main/java/cn/chjyj/szwh/controller/admin/AdminAccountCloseController.java @@ -165,14 +165,15 @@ public class AdminAccountCloseController extends BaseController { somap.put("ub.batchcode",batchcode); } // 结算状态 [来自 order ] + Integer cstatus=null; String sstatus = request.getString("close_status"); if(StringUtils.isNotEmpty(sstatus)){ - Integer cstatus = Integer.valueOf(sstatus); + cstatus = Integer.valueOf(sstatus); somap.put("o.close_status",cstatus); } // 传入查询条件 - Map rmap = accountCloseService.getBillDetailMap(somap,ipage,ilimit); - //Map rmap = accountCloseService.getBillDetail(uesrIsli,batchcode,ipage,ilimit); + // Map rmap = accountCloseService.getBillDetailMap(somap,ipage,ilimit); + Map rmap = accountCloseService.getBillDetail(userIsli,batchcode,cstatus,ipage,ilimit); jsonObject.put("data",rmap); jsonObject.put("msg",msg); jsonObject.put("code",code); diff --git a/src/main/java/cn/chjyj/szwh/service/AccountCloseService.java b/src/main/java/cn/chjyj/szwh/service/AccountCloseService.java index f8eb8a6..66008a4 100644 --- a/src/main/java/cn/chjyj/szwh/service/AccountCloseService.java +++ b/src/main/java/cn/chjyj/szwh/service/AccountCloseService.java @@ -65,7 +65,7 @@ public interface AccountCloseService { * @param ilimit * @return */ - Map getBillDetail(String userIsli,String batchcode,int ipage,int ilimit); + Map getBillDetail(String userIsli,String batchcode,Integer status,int ipage,int ilimit); /** * 多条件查询 diff --git a/src/main/java/cn/chjyj/szwh/service/impl/AccountCloseServiceImpl.java b/src/main/java/cn/chjyj/szwh/service/impl/AccountCloseServiceImpl.java index 60c4116..942e15f 100644 --- a/src/main/java/cn/chjyj/szwh/service/impl/AccountCloseServiceImpl.java +++ b/src/main/java/cn/chjyj/szwh/service/impl/AccountCloseServiceImpl.java @@ -28,6 +28,9 @@ public class AccountCloseServiceImpl implements AccountCloseService { private OrderUserMapper orderUserMapper; @Autowired private OrderMapper orderMapper; + // 订单商品详情 + @Autowired + private OrderGoodsDetailMapper orderGoodsDetailMapper; @Autowired private AccountRatioSettingMapper accountRatioSettingMapper; @@ -202,13 +205,61 @@ public class AccountCloseServiceImpl implements AccountCloseService { * @return */ @Override - public Map getBillDetail(String userIsli,String batchcode, int ipage, int ilimit) { + public Map getBillDetail(String userIsli,String batchcode, Integer status, int ipage, int ilimit) { + // 开始记录 + int startrs =ipage>1?(ipage-1)*ilimit:0; + // 查询map + Map somap = new HashMap<>(); + somap.put("user_isli",userIsli); + if(batchcode!=null){ + somap.put("batchcode",batchcode.trim()); + } + // 有状态值的时候 + String rbatcode =""; + StringBuilder sb = new StringBuilder(); + if(status!=null){ + // 订单状态不为6 + if(status!=6){ + somap.put("entrust_islicode",userIsli); + somap.put("close_status",status.toString()); + List togdlist = orderGoodsDetailMapper.getOrderGoodsDetailByMap(somap,"batchcode"); + // 执行查询 + if(togdlist!=null){ + // + for(int x=0;x ordlist = orderMapper.getOrderList(somap,0,100); + // 如果记录存在 + if(ordlist!=null){ + // + ordlist.stream().forEach(item->{ + sb.append(item.getBatchcode()); + sb.append(","); + }); + rbatcode = sb.toString(); + } + } + } + // 统计收入 + BigDecimal income = userAccountBillMapper.sumMoney("thatday_sale_money"); + // 支出 + BigDecimal disburse = userAccountBillMapper.sumMoney("thatday_buy_money"); + // 时间格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + // 结果集map Map retmap =new HashMap(); - int startrs =ipage>1?(ipage-1)*ilimit:0; + //统计符合条件的数量 int total = userAccountBillMapper.countUserAccBill(userIsli); - Integer end = ipage*ilimit; - Integer start =startrs+1; + int end = ipage*ilimit; + int start =startrs+1; if(total < end){ end = total; } @@ -222,67 +273,48 @@ public class AccountCloseServiceImpl implements AccountCloseService { retmap.put("pre_page",ilimit); retmap.put("total",total); - // 查询map - Map somap = new HashMap<>(); - somap.put("user_isli",userIsli); - if(batchcode!=null){ - somap.put("batchcode",batchcode.trim()); - } + // 查询列表 List uacblist = userAccountBillMapper.getUserAccBillMap(somap,startrs,ilimit); - // list - //List uacblist = userAccountBillMapper.getUserAccBill(uesrIsli,ipage,ilimit); - BigDecimal income = new BigDecimal(0.00); // 收入 - BigDecimal disburse = new BigDecimal(0.00); //支出 - List retlist =new ArrayList(); for(UserAccountBill uac:uacblist){ // 用户信息 - Map odumap =new HashMap(); + Map nodumap =new HashMap(); OrderUser orderUser = orderUserMapper.getUserOrder(uac.getBatchcode(),uac.getUserIsli()); - odumap.put("order_user",orderUser); + nodumap.put("order_user",orderUser); //结算情况 Order order = orderMapper.getOrderByBatchcode(uac.getBatchcode()); - odumap.put("order_createtime", sdf.format(order.getCreatetime())); + nodumap.put("order_createtime", sdf.format(order.getCreatetime())); String odcompletetime= order.getCompletetime()==null?"-":sdf.format(order.getCompletetime()); - odumap.put("order_completetime", odcompletetime); - odumap.put("close_status",order.getCloseStatus()); + nodumap.put("order_completetime", odcompletetime); + nodumap.put("close_status",order.getCloseStatus()); //uac 数据进行格式化 - odumap.put("id",uac.getId()); - odumap.put("user_isli", uac.getUserIsli()); - odumap.put("batchcode", uac.getBatchcode()); - odumap.put("order_user_id", uac.getOrderUserId()); - odumap.put("center_number", StringUtils.isBlank(uac.getCenterNumber())?"-":uac.getCenterNumber()); - odumap.put("center_name", StringUtils.isBlank(uac.getCenterName())?"-":uac.getCenterName()); - odumap.put("service_number", uac.getServiceNumber()); - odumap.put("service_name", uac.getServiceName()); - odumap.put("service_charge", uac.getServiceCharge()); - odumap.put("thatday_buy_money", uac.getThatdayBuyMoney()); - odumap.put("preliminary_capital", uac.getPreliminaryCapital()); - odumap.put("available_capital", uac.getAvailableCapital()); - odumap.put("disburse_capital", uac.getDisburseCapital()); - odumap.put("entrust_cost", uac.getEntrustCost()); - odumap.put("thatday_sale_money", uac.getThatdaySaleMoney()); - odumap.put("service_charge_allot", uac.getServiceChargeAllot()); - odumap.put("capital_remaining",uac.getCapitalRemaining()); - odumap.put("freeze_earnest_money", uac.getFreezeEarnestMoney()); - odumap.put("createtime", sdf.format(uac.getCreatetime())); - odumap.put("close_time", null); - odumap.put("callback_msg", "-"); - - //计算收支 - Map osmap = new HashMap(); - osmap.put("wherestr","buy_islicode='"+uac.getUserIsli()+"' and pay_status=2"); - osmap.put("field","total_money"); - BigDecimal odtmpsum = orderMapper.sumOrderByMap(osmap); - income = income.add(odtmpsum); - - // 订单商品中所有价格 + nodumap.put("id",uac.getId()); + nodumap.put("user_isli", uac.getUserIsli()); + nodumap.put("batchcode", uac.getBatchcode()); + nodumap.put("order_user_id", uac.getOrderUserId()); + nodumap.put("center_number", StringUtils.isBlank(uac.getCenterNumber())?"-":uac.getCenterNumber()); + nodumap.put("center_name", StringUtils.isBlank(uac.getCenterName())?"-":uac.getCenterName()); + nodumap.put("service_number", uac.getServiceNumber()); + nodumap.put("service_name", uac.getServiceName()); + nodumap.put("service_charge", uac.getServiceCharge()); + nodumap.put("thatday_buy_money", uac.getThatdayBuyMoney()); + nodumap.put("preliminary_capital", uac.getPreliminaryCapital()); + nodumap.put("available_capital", uac.getAvailableCapital()); + nodumap.put("disburse_capital", uac.getDisburseCapital()); + nodumap.put("entrust_cost", uac.getEntrustCost()); + nodumap.put("thatday_sale_money", uac.getThatdaySaleMoney()); + nodumap.put("service_charge_allot", uac.getServiceChargeAllot()); + nodumap.put("capital_remaining",uac.getCapitalRemaining()); + nodumap.put("freeze_earnest_money", uac.getFreezeEarnestMoney()); + nodumap.put("createtime", sdf.format(uac.getCreatetime())); + nodumap.put("close_time", null); + nodumap.put("callback_msg", "-"); // - retlist.add(odumap); + retlist.add(nodumap); } retmap.put("income",income); @@ -446,4 +478,9 @@ public class AccountCloseServiceImpl implements AccountCloseService { retmap.put("msg",msg); return retmap; } + + private List converUserBill(){ + List rtlist = new ArrayList(); + return rtlist; + } }