From 0ff3937e0bf44fb8682a54d26361ca1857e86d77 Mon Sep 17 00:00:00 2001 From: "geng.tang@qq.com" Date: Tue, 23 Apr 2024 15:56:47 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=A8=E5=BA=97=E6=94=B6=E7=9B=8A=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E4=BB=B6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gxwebsoft/apps/task/OrderTask.java | 26 ++++++------ .../common/core/utils/LocalDateUtil.java | 40 +++++++++++++++++++ .../system/controller/MainController.java | 2 +- .../system/service/impl/UserServiceImpl.java | 7 ++-- .../shop/controller/ProfitLogController.java | 20 ++++++++-- .../shop/entity/MerchantWithdraw.java | 3 ++ .../gxwebsoft/shop/param/ProfitLogParam.java | 4 ++ .../impl/MerchantWithdrawServiceImpl.java | 1 + src/main/resources/application.yml | 1 + 数据库脚本/shop_order_231231.sql | 5 +++ 10 files changed, 90 insertions(+), 19 deletions(-) create mode 100644 src/main/java/com/gxwebsoft/common/core/utils/LocalDateUtil.java create mode 100644 数据库脚本/shop_order_231231.sql diff --git a/src/main/java/com/gxwebsoft/apps/task/OrderTask.java b/src/main/java/com/gxwebsoft/apps/task/OrderTask.java index 6f80549..d6dac77 100644 --- a/src/main/java/com/gxwebsoft/apps/task/OrderTask.java +++ b/src/main/java/com/gxwebsoft/apps/task/OrderTask.java @@ -236,7 +236,6 @@ public class OrderTask { return; } - Set equipmentIds = new HashSet<>(); Set orderIds = new HashSet<>(); Set tuijianUserPhones = new HashSet<>(); @@ -247,7 +246,7 @@ public class OrderTask { for (OrderPay order : orderList) { equipmentIds.add(order.getEquipmentId()); mendianCodes.add(order.getMerchantCode()); - orderIds.add(order.getId()); + orderIds.add(order.getRentOrderId()); userIds.add(order.getUserId()); if (order.getDealerPhone() != null) { tuijianUserPhones.add(order.getDealerPhone()); @@ -303,7 +302,7 @@ public class OrderTask { // 查询所有区域经理 // Wrappers.lambdaQuery(Manager.class) List jingliList = managerService.list(); - + List finalOrderIds = new ArrayList<>(); // 开始结算 for (OrderPay order : orderList) { @@ -322,7 +321,7 @@ public class OrderTask { User orderUser = orderUserMap.get(order.getUserId()).get(0); - List equipmentOrderGoods = orderGoodsMap.get(order.getId()); + List equipmentOrderGoods = orderGoodsMap.get(order.getRentOrderId()); if (CollectionUtils.isNotEmpty(equipmentOrderGoods)) { EquipmentOrderGoods orderGoods = equipmentOrderGoods.get(0); BigDecimal touziProfit; @@ -384,7 +383,7 @@ public class OrderTask { profitLog.setOrderId(order.getId()); profitLog.setOrderNo(orderNo); profitLog.setOrderUserName(orderUser.getNickname()); - profitLog.setComments("推广收益:" + order.getUserId()); + profitLog.setComments("推广收益:" + orderUser.getPhone()); profitLog.setEquipmentCode(equipment.getEquipmentCode()); profitLog.setOrderSource(order.getOrderSource()); // profitLog.setIsRenew(order.getIsRenew()); @@ -407,7 +406,7 @@ public class OrderTask { profitLog.setOrderId(order.getId()); profitLog.setOrderNo(orderNo); profitLog.setOrderUserName(orderUser.getNickname()); - profitLog.setComments("门店收益:" + order.getMerchantCode()); + profitLog.setComments("门店收益:" + merchant.getMerchantName()); profitLog.setEquipmentCode(equipment.getEquipmentCode()); profitLog.setMerchantName(merchant.getMerchantName()); profitLog.setOrderSource(order.getOrderSource()); @@ -440,7 +439,7 @@ public class OrderTask { profitLog.setOrderId(order.getId()); profitLog.setOrderNo(orderNo); profitLog.setOrderUserName(orderUser.getNickname()); - profitLog.setComments("区域经理收益:" + order.getMerchantCode()); + profitLog.setComments("区域经理收益:" + order.getMerchantName()); profitLog.setEquipmentCode(equipment.getEquipmentCode()); profitLog.setMerchantName(merchant.getMerchantName()); profitLog.setOrderSource(order.getOrderSource()); @@ -449,14 +448,17 @@ public class OrderTask { log.info("发放区域经理{}分润,订单号{}!", managerUserId, orderNo); } } + + finalOrderIds.add(order.getId()); + } else { + log.info("订单{}无电池记录!", order.getId()); } - - } // 设置为已结算 - LambdaUpdateWrapper updateWrapper = Wrappers.lambdaUpdate(OrderPay.class).in(OrderPay::getId, orderIds).set(OrderPay::getIsSettled, 1); - orderPayService.update(updateWrapper); - + if(CollectionUtil.isNotEmpty(finalOrderIds)){ + LambdaUpdateWrapper updateWrapper = Wrappers.lambdaUpdate(OrderPay.class).in(OrderPay::getId, finalOrderIds).set(OrderPay::getIsSettled, 1).set(OrderPay::getSettledTime, new Date()); + orderPayService.update(updateWrapper); + } } /** diff --git a/src/main/java/com/gxwebsoft/common/core/utils/LocalDateUtil.java b/src/main/java/com/gxwebsoft/common/core/utils/LocalDateUtil.java new file mode 100644 index 0000000..a0f144b --- /dev/null +++ b/src/main/java/com/gxwebsoft/common/core/utils/LocalDateUtil.java @@ -0,0 +1,40 @@ +package com.gxwebsoft.common.core.utils; + +import java.time.Instant; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.util.Date; + +/** + * @author tanggeng + * @date 2023/5/29 16:39 + * @description LOCALDATE转化 + */ +public class LocalDateUtil { + public static Date localDate2Date(LocalDate lDate){ + return Date.from(lDate.atStartOfDay().atZone(ZoneId.systemDefault()).toInstant()); + } + + public static Date localDateTime2Date(LocalDateTime lDate){ + return Date.from(lDate.atZone(ZoneId.systemDefault()).toInstant()); + } + + public static LocalDate date2LocalDate(Date lDate){ + if(null == lDate){ + return null; + } + Instant instant = lDate.toInstant(); + ZoneId zoneId = ZoneId.systemDefault(); + return instant.atZone(zoneId).toLocalDate(); + } + + public static LocalDateTime date2LocalDateTime(Date lDate){ + if(null == lDate){ + return null; + } + Instant instant = lDate.toInstant(); + ZoneId zoneId = ZoneId.systemDefault(); + return instant.atZone(zoneId).toLocalDateTime(); + } +} diff --git a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java index fc35926..619ae7a 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java @@ -140,7 +140,7 @@ public class MainController extends BaseController { public ApiResult userInfo() { final Integer loginUserId = getLoginUserId(); if(loginUserId != null){ - return success(userService.getByIdRel(getLoginUserId())); + return success(userService.getByIdRel(loginUserId)); } return fail("loginUserId不存在",null); } diff --git a/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java b/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java index 3dd9c79..a944bba 100644 --- a/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java +++ b/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java @@ -119,9 +119,10 @@ public class UserServiceImpl extends ServiceImpl implements Us @Override public User getByIdRel(Integer userId) { - UserParam param = new UserParam(); - param.setUserId(userId); - User user = param.getOne(baseMapper.selectListRel(param)); +// UserParam param = new UserParam(); +// param.setUserId(userId); +// User user = param.getOne(baseMapper.selectListRel(param)); + User user = baseMapper.selectById(userId); if (user != null) { user.setRoles(userRoleService.listByUserId(user.getUserId())); user.setAuthorities(roleMenuService.listMenuByUserId(user.getUserId(), null)); diff --git a/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java b/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java index ec882fd..6c36bce 100644 --- a/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java +++ b/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java @@ -1,8 +1,11 @@ package com.gxwebsoft.shop.controller; +import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gxwebsoft.common.core.utils.CommonUtil; +import com.gxwebsoft.common.core.utils.LocalDateUtil; import com.gxwebsoft.common.core.web.BaseController; import com.gxwebsoft.common.system.entity.User; import com.gxwebsoft.shop.service.ProfitLogService; @@ -20,6 +23,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.time.LocalDate; +import java.util.Date; import java.util.List; /** @@ -40,12 +44,22 @@ public class ProfitLogController extends BaseController { @GetMapping("/page") public ApiResult> page(ProfitLogParam param) { PageParam page = new PageParam<>(param); - QueryWrapper wrapper = page.getWrapper(); + QueryWrapper wrapper = page.getWrapper("beginDate", "endDate", "scene"); LocalDate beginDate = param.getBeginDate(); - wrapper.ge(null != beginDate, "create_time", beginDate); + if(null != beginDate){ +// Date dBegin = LocalDateUtil.localDate2Date(beginDate); + wrapper.ge("create_time", beginDate); + } + LocalDate endDate = param.getEndDate(); if(null != endDate){ - wrapper.lt("create_time", endDate); +// Date dEnd = LocalDateUtil.localDate2Date(endDate.plusDays(1)); + wrapper.lt("create_time", endDate.plusDays(1)); + } + + Integer scene = param.getScene(); + if(null != scene && scene > 0){ + wrapper.eq("scene", scene); } wrapper.orderByDesc("create_time"); diff --git a/src/main/java/com/gxwebsoft/shop/entity/MerchantWithdraw.java b/src/main/java/com/gxwebsoft/shop/entity/MerchantWithdraw.java index e84fdb4..990e85c 100644 --- a/src/main/java/com/gxwebsoft/shop/entity/MerchantWithdraw.java +++ b/src/main/java/com/gxwebsoft/shop/entity/MerchantWithdraw.java @@ -45,6 +45,9 @@ public class MerchantWithdraw implements Serializable { @ApiModelProperty(value = "用户昵称") private String nickname; + @ApiModelProperty(value = "提现用户手机号") + private String userPhone; + @ApiModelProperty(value = "提现金额") private BigDecimal money; diff --git a/src/main/java/com/gxwebsoft/shop/param/ProfitLogParam.java b/src/main/java/com/gxwebsoft/shop/param/ProfitLogParam.java index f03ba89..6d67006 100644 --- a/src/main/java/com/gxwebsoft/shop/param/ProfitLogParam.java +++ b/src/main/java/com/gxwebsoft/shop/param/ProfitLogParam.java @@ -1,5 +1,6 @@ package com.gxwebsoft.shop.param; +import com.fasterxml.jackson.annotation.JsonFormat; import com.gxwebsoft.common.core.annotation.QueryField; import com.gxwebsoft.common.core.annotation.QueryType; import com.gxwebsoft.common.core.web.BaseParam; @@ -8,6 +9,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.time.LocalDate; @@ -58,8 +60,10 @@ public class ProfitLogParam extends BaseParam { private Integer status; @ApiModelProperty(value = "开始日期") + @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) private LocalDate beginDate; @ApiModelProperty(value = "结束日期") + @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) private LocalDate endDate; } diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/MerchantWithdrawServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/MerchantWithdrawServiceImpl.java index 3fc882e..1646fb6 100644 --- a/src/main/java/com/gxwebsoft/shop/service/impl/MerchantWithdrawServiceImpl.java +++ b/src/main/java/com/gxwebsoft/shop/service/impl/MerchantWithdrawServiceImpl.java @@ -129,6 +129,7 @@ public class MerchantWithdrawServiceImpl extends ServiceImpl