From 3eac5599e0972710ed21bc3402cc2c9a25ca80de Mon Sep 17 00:00:00 2001 From: liuyingfang <1357764963@qq.com> Date: Sat, 2 Mar 2024 11:09:26 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=9F=E6=88=90=E8=AE=A2=E5=8D=95=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=EF=BC=8C=E5=91=98=E5=B7=A5=E7=9B=B8=E5=85=B3=EF=BC=8C?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/oder/domain/BotSendOrder.java | 116 ------------- .../oder/domain/BotSendOrderDetails.java | 120 ------------- .../modules/oder/domain/ViewBoxOrder.java | 108 ------------ .../oder/rest/BotSendOrderController.java | 87 ---------- .../rest/BotSendOrderDetailsController.java | 87 ---------- .../oder/rest/ViewBoxOrderController.java | 87 ---------- .../service/dto/BotSendOrderDetailsDto.java | 84 ---------- .../dto/BotSendOrderDetailsQueryCriteria.java | 57 ------- .../oder/service/dto/BotSendOrderDto.java | 83 --------- .../oder/service/dto/ViewBoxOrderDto.java | 78 --------- .../impl/BotSendOrderDetailsServiceImpl.java | 121 -------------- .../service/impl/BotSendOrderServiceImpl.java | 120 ------------- .../service/impl/ViewBoxOrderServiceImpl.java | 118 ------------- .../cashierCart/domain/TbCashierCart.java | 156 +++++++++++++++++ .../repository/TbCashierCartRepository.java} | 10 +- .../rest/TbCashierCartController.java | 82 +++++++++ .../service/TbCashierCartService.java} | 32 ++-- .../service/dto/TbCashierCartDto.java | 108 ++++++++++++ .../dto/TbCashierCartQueryCriteria.java | 29 ++++ .../impl/TbCashierCartServiceImpl.java | 130 +++++++++++++++ .../mapstruct/TbCashierCartMapper.java} | 12 +- .../orderDetail/domain/TbOrderDetail.java | 105 ++++++++++++ .../repository/TbOrderDetailRepository.java} | 10 +- .../rest/TbOrderDetailController.java | 82 +++++++++ .../service/TbOrderDetailService.java} | 32 ++-- .../service/dto/TbOrderDetailDto.java | 62 +++++++ .../dto/TbOrderDetailQueryCriteria.java | 29 ++++ .../impl/TbOrderDetailServiceImpl.java | 117 +++++++++++++ .../mapstruct/TbOrderDetailMapper.java} | 12 +- .../orderInfo/domain/TbOrderInfo.java | 90 +++++++--- .../repository/TbOrderInfoRepository.java | 6 +- .../orderInfo/rest/TbOrderInfoController.java | 37 ++--- .../orderInfo/service/TbOrderInfoService.java | 34 ++-- .../orderInfo/service/dto/TbOrderInfoDto.java | 111 ++++++------- .../service/dto/TbOrderInfoQueryCriteria.java | 32 +--- .../service/impl/TbOrderInfoServiceImpl.java | 145 ++++++++++++++++ .../service/mapstruct/TbOrderInfoMapper.java | 8 +- .../service/impl/TbOrderInfoServiceImpl.java | 146 ---------------- .../modules/payType/domain/TbShopPayType.java | 4 + .../payType/service/dto/TbShopPayTypeDto.java | 4 + .../impl/TbShopPayTypeServiceImpl.java | 5 +- .../shopStaff/domain/TbPlussShopStaff.java | 87 ++++++++++ .../TbPlussShopStaffRepository.java | 28 ++++ .../rest/TbPlussShopStaffController.java | 82 +++++++++ .../service/TbPlussShopStaffService.java | 83 +++++++++ .../service/dto/TbPlussShopStaffDto.java | 64 +++++++ .../dto/TbPlussShopStaffQueryCriteria.java} | 22 +-- .../impl/TbPlussShopStaffServiceImpl.java | 113 +++++++++++++ .../mapstruct/TbPlussShopStaffMapper.java | 32 ++++ .../shopInfo/shopUser/domain/TbShopUser.java | 157 ++++++++++++++++++ .../repository/TbShopUserRepository.java} | 10 +- .../shopUser/rest/TbShopUserController.java | 87 ++++++++++ .../shopUser/service/TbShopUserService.java} | 32 ++-- .../shopUser/service/dto/TbShopUserDto.java | 111 +++++++++++++ .../service/dto/TbShopUserQueryCriteria.java} | 31 ++-- .../service/impl/TbShopUserServiceImpl.java | 130 +++++++++++++++ .../service/mapstruct/TbShopUserMapper.java} | 12 +- .../template/generator/admin/Controller.ftl | 5 - 58 files changed, 2288 insertions(+), 1694 deletions(-) delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrder.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrderDetails.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/ViewBoxOrder.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderController.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderDetailsController.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/ViewBoxOrderController.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsDto.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsQueryCriteria.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDto.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/ViewBoxOrderDto.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderDetailsServiceImpl.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderServiceImpl.java delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/ViewBoxOrderServiceImpl.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/domain/TbCashierCart.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/repository/ViewBoxOrderRepository.java => order/cashierCart/repository/TbCashierCartRepository.java} (72%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/rest/TbCashierCartController.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/ViewBoxOrderService.java => order/cashierCart/service/TbCashierCartService.java} (62%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartDto.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartQueryCriteria.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/impl/TbCashierCartServiceImpl.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/mapstruct/BotSendOrderDetailsMapper.java => order/cashierCart/service/mapstruct/TbCashierCartMapper.java} (71%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/domain/TbOrderDetail.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/repository/BotSendOrderDetailsRepository.java => order/orderDetail/repository/TbOrderDetailRepository.java} (72%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/rest/TbOrderDetailController.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/BotSendOrderDetailsService.java => order/orderDetail/service/TbOrderDetailService.java} (61%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailDto.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailQueryCriteria.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/impl/TbOrderDetailServiceImpl.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/mapstruct/BotSendOrderMapper.java => order/orderDetail/service/mapstruct/TbOrderDetailMapper.java} (71%) rename eladmin-system/src/main/java/me/zhengjie/modules/{ => order}/orderInfo/domain/TbOrderInfo.java (56%) rename eladmin-system/src/main/java/me/zhengjie/modules/{ => order}/orderInfo/repository/TbOrderInfoRepository.java (86%) rename eladmin-system/src/main/java/me/zhengjie/modules/{ => order}/orderInfo/rest/TbOrderInfoController.java (75%) rename eladmin-system/src/main/java/me/zhengjie/modules/{ => order}/orderInfo/service/TbOrderInfoService.java (73%) rename eladmin-system/src/main/java/me/zhengjie/modules/{ => order}/orderInfo/service/dto/TbOrderInfoDto.java (54%) rename eladmin-system/src/main/java/me/zhengjie/modules/{ => order}/orderInfo/service/dto/TbOrderInfoQueryCriteria.java (73%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/impl/TbOrderInfoServiceImpl.java rename eladmin-system/src/main/java/me/zhengjie/modules/{ => order}/orderInfo/service/mapstruct/TbOrderInfoMapper.java (80%) delete mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/impl/TbOrderInfoServiceImpl.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/domain/TbPlussShopStaff.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/repository/TbPlussShopStaffRepository.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/rest/TbPlussShopStaffController.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/TbPlussShopStaffService.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/dto/TbPlussShopStaffDto.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/dto/ViewBoxOrderQueryCriteria.java => shopInfo/shopStaff/service/dto/TbPlussShopStaffQueryCriteria.java} (68%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/impl/TbPlussShopStaffServiceImpl.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/mapstruct/TbPlussShopStaffMapper.java create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/domain/TbShopUser.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/repository/BotSendOrderRepository.java => shopInfo/shopUser/repository/TbShopUserRepository.java} (73%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/rest/TbShopUserController.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/BotSendOrderService.java => shopInfo/shopUser/service/TbShopUserService.java} (63%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/dto/TbShopUserDto.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/dto/BotSendOrderQueryCriteria.java => shopInfo/shopUser/service/dto/TbShopUserQueryCriteria.java} (65%) create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/impl/TbShopUserServiceImpl.java rename eladmin-system/src/main/java/me/zhengjie/modules/{oder/service/mapstruct/ViewBoxOrderMapper.java => shopInfo/shopUser/service/mapstruct/TbShopUserMapper.java} (72%) diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrder.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrder.java deleted file mode 100644 index 1851af51..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrder.java +++ /dev/null @@ -1,116 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.domain; - -import lombok.Data; -import cn.hutool.core.bean.BeanUtil; -import io.swagger.annotations.ApiModelProperty; -import cn.hutool.core.bean.copier.CopyOptions; -import javax.persistence.*; -import javax.validation.constraints.*; -import java.sql.Timestamp; -import java.math.BigDecimal; -import java.io.Serializable; - -/** -* @website https://eladmin.vip -* @description / -* @author admin -* @date 2023-10-30 -**/ -@Entity -@Data -@Table(name="bot_send_order") -public class BotSendOrder implements Serializable { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "`id`") - @ApiModelProperty(value = "id") - private Integer id; - - @Column(name = "`order_code`") - @ApiModelProperty(value = "订单号") - private String orderCode; - - @Column(name = "`message_id`") - @ApiModelProperty(value = "消息id") - private Integer messageId; - - @Column(name = "`chat_id`") - @ApiModelProperty(value = "聊天id") - private Long chatId; - - @Column(name = "`user_telegram_id`") - @ApiModelProperty(value = "用户电报号") - private String userTelegramId; - - @Column(name = "`user_name`") - @ApiModelProperty(value = "用户名称") - private String userName; - - @Column(name = "`odds`") - @ApiModelProperty(value = "赔率") - private BigDecimal odds; - - @Column(name = "`chip_total`") - @ApiModelProperty(value = "发包金额") - private BigDecimal chipTotal; - - @Column(name = "`chip_remain`") - @ApiModelProperty(value = "未抢完金额") - private BigDecimal chipRemain; - - @Column(name = "`profit`") - @ApiModelProperty(value = "总盈利") - private BigDecimal profit; - - @Column(name = "`bomb_number`") - @ApiModelProperty(value = "雷号") - private String bombNumber; - - @Column(name = "`now_receive_count`") - @ApiModelProperty(value = "领取次数") - private String nowReceiveCount; - - @Column(name = "`status`") - @ApiModelProperty(value = "状态") - private String status; - - @Column(name = "`type`") - @ApiModelProperty(value = "类型") - private String type; - - @Column(name = "`btc_price`") - @ApiModelProperty(value = "价格") - private String btcPrice; - - @Column(name = "`gong_zheng_num`") - @ApiModelProperty(value = "gongZhengNum") - private String gongZhengNum; - - @Column(name = "`create_time`") - @ApiModelProperty(value = "创建时间") - private Timestamp createTime; - - @Column(name = "`update_time`") - @ApiModelProperty(value = "更新时间") - private Timestamp updateTime; - - public void copy(BotSendOrder source){ - BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); - } -} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrderDetails.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrderDetails.java deleted file mode 100644 index d5741a30..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/BotSendOrderDetails.java +++ /dev/null @@ -1,120 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.domain; - -import lombok.Data; -import cn.hutool.core.bean.BeanUtil; -import io.swagger.annotations.ApiModelProperty; -import cn.hutool.core.bean.copier.CopyOptions; -import javax.persistence.*; -import javax.validation.constraints.*; -import java.sql.Timestamp; -import java.math.BigDecimal; -import java.io.Serializable; - -/** -* @website https://eladmin.vip -* @description / -* @author admin -* @date 2023-10-31 -**/ -@Entity -@Data -@Table(name="bot_send_order_details") -public class BotSendOrderDetails implements Serializable { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "`id`") - @ApiModelProperty(value = "id") - private Integer id; - - @Column(name = "`order_code`") - @ApiModelProperty(value = "订单号") - private String orderCode; - - @Column(name = "`chip_total`") - @ApiModelProperty(value = "发包金额") - private BigDecimal chipTotal; - - @Column(name = "`bomb_number`") - @ApiModelProperty(value = "雷号") - private String bombNumber; - - @Column(name = "`now_receive_count`") - @ApiModelProperty(value = "领取次数") - private String nowReceiveCount; - - @Column(name = "`send_user_telegram_id`") - @ApiModelProperty(value = "发送者电报号") - private String sendUserTelegramId; - - @Column(name = "`send_user_name`") - @ApiModelProperty(value = "发送者名称") - private String sendUserName; - - @Column(name = "`send_user_status`") - @ApiModelProperty(value = "发送者输赢状况") - private String sendUserStatus; - - @Column(name = "`send_user_fee`") - @ApiModelProperty(value = "手续费") - private BigDecimal sendUserFee; - - @Column(name = "`send_user_profit`") - @ApiModelProperty(value = "赔率") - private BigDecimal sendUserProfit; - - @Column(name = "`get_user_telegram_id`") - @ApiModelProperty(value = "抢红包者电报号") - private String getUserTelegramId; - - @Column(name = "`get_user_name`") - @ApiModelProperty(value = "抢红包者名称") - private String getUserName; - - @Column(name = "`get_user_status`") - @ApiModelProperty(value = "抢红包者输赢状况") - private String getUserStatus; - - @Column(name = "`get_user_get_amount`") - @ApiModelProperty(value = "红包金额") - private BigDecimal getUserGetAmount; - - @Column(name = "`get_user_fee`") - @ApiModelProperty(value = "手续费") - private BigDecimal getUserFee; - - @Column(name = "`get_user_profit`") - @ApiModelProperty(value = "赔率") - private BigDecimal getUserProfit; - - @Column(name = "`special_prize_type`") - @ApiModelProperty(value = "specialPrizeType") - private String specialPrizeType; - - @Column(name = "`special_prize_amount`") - @ApiModelProperty(value = "specialPrizeAmount") - private BigDecimal specialPrizeAmount; - - @Column(name = "`create_time`") - @ApiModelProperty(value = "createTime") - private Timestamp createTime; - - public void copy(BotSendOrderDetails source){ - BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); - } -} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/ViewBoxOrder.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/ViewBoxOrder.java deleted file mode 100644 index 2b9bab10..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/domain/ViewBoxOrder.java +++ /dev/null @@ -1,108 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.domain; - -import lombok.Data; -import cn.hutool.core.bean.BeanUtil; -import io.swagger.annotations.ApiModelProperty; -import cn.hutool.core.bean.copier.CopyOptions; -import javax.persistence.*; -import javax.validation.constraints.*; -import java.sql.Timestamp; -import java.math.BigDecimal; -import java.io.Serializable; - -/** -* @website https://eladmin.vip -* @description / -* @author admin -* @date 2023-06-23 -**/ -@Entity -@Data -@Table(name="view_box_order") -public class ViewBoxOrder implements Serializable { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "`id`") - @ApiModelProperty(value = "id") - private Integer id; - - @Column(name = "`user_id`") - @ApiModelProperty(value = "下单人") - private Integer userId; - - @Column(name = "`box_price`") - @ApiModelProperty(value = "盲盒的单价") - private BigDecimal boxPrice; - - @Column(name = "`box_number`") - @ApiModelProperty(value = "购买数量") - private BigDecimal boxNumber; - - @Column(name = "`pay_coin_name`") - @ApiModelProperty(value = "支付代币code") - private String payCoinName; - - @Column(name = "`pay_coin_price`") - @ApiModelProperty(value = "支付代币的当前单价(u)") - private BigDecimal payCoinPrice; - - @Column(name = "`pay_coin_total`") - @ApiModelProperty(value = "总支付的token数量") - private BigDecimal payCoinTotal; - - @Column(name = "`pay_miner_total`") - @ApiModelProperty(value = " 预计收益(USDT)") - private BigDecimal payMinerTotal; - - @Column(name = "`tx_hash`") - @ApiModelProperty(value = "交易哈希") - private String txHash; - - @Column(name = "`from_address`") - @ApiModelProperty(value = "付款地址") - private String fromAddress; - - @Column(name = "`to_address`") - @ApiModelProperty(value = "收款地址") - private String toAddress; - - @Column(name = "`confirm_status`") - @ApiModelProperty(value = "链上确认状态") - private String confirmStatus; - - @Column(name = "`remark`") - @ApiModelProperty(value = "订单描述") - private String remark; - - @Column(name = "`create_time`") - @ApiModelProperty(value = "创建时间") - private Timestamp createTime; - - @Column(name = "`update_time`") - @ApiModelProperty(value = "更新时间") - private Timestamp updateTime; - - @Column(name = "`address`") - @ApiModelProperty(value = "钱包地址") - private String address; - - public void copy(ViewBoxOrder source){ - BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); - } -} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderController.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderController.java deleted file mode 100644 index 7971abb6..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderController.java +++ /dev/null @@ -1,87 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.rest; - -import me.zhengjie.annotation.Log; -import me.zhengjie.modules.oder.domain.BotSendOrder; -import me.zhengjie.modules.oder.service.BotSendOrderService; -import me.zhengjie.modules.oder.service.dto.BotSendOrderQueryCriteria; -import org.springframework.data.domain.Pageable; -import lombok.RequiredArgsConstructor; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; -import io.swagger.annotations.*; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; - -/** -* @website https://eladmin.vip -* @author admin -* @date 2023-10-30 -**/ -@RestController -@RequiredArgsConstructor -@Api(tags = "OrderController管理") -@RequestMapping("/api/botSendOrder") -public class BotSendOrderController { - - private final BotSendOrderService botSendOrderService; - - @Log("导出数据") - @ApiOperation("导出数据") - @GetMapping(value = "/download") - @PreAuthorize("@el.check('botSendOrder:list')") - public void exportBotSendOrder(HttpServletResponse response, BotSendOrderQueryCriteria criteria) throws IOException { - botSendOrderService.download(botSendOrderService.queryAll(criteria), response); - } - - @GetMapping - @Log("查询OrderController") - @ApiOperation("查询OrderController") - @PreAuthorize("@el.check('botSendOrder:list')") - public ResponseEntity queryBotSendOrder(BotSendOrderQueryCriteria criteria, Pageable pageable){ - return new ResponseEntity<>(botSendOrderService.queryAll(criteria,pageable),HttpStatus.OK); - } - - @PostMapping - @Log("新增OrderController") - @ApiOperation("新增OrderController") - @PreAuthorize("@el.check('botSendOrder:add')") - public ResponseEntity createBotSendOrder(@Validated @RequestBody BotSendOrder resources){ - return new ResponseEntity<>(botSendOrderService.create(resources),HttpStatus.CREATED); - } - - @PutMapping - @Log("修改OrderController") - @ApiOperation("修改OrderController") - @PreAuthorize("@el.check('botSendOrder:edit')") - public ResponseEntity updateBotSendOrder(@Validated @RequestBody BotSendOrder resources){ - botSendOrderService.update(resources); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @DeleteMapping - @Log("删除OrderController") - @ApiOperation("删除OrderController") - @PreAuthorize("@el.check('botSendOrder:del')") - public ResponseEntity deleteBotSendOrder(@RequestBody Integer[] ids) { - botSendOrderService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderDetailsController.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderDetailsController.java deleted file mode 100644 index d95fc730..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/BotSendOrderDetailsController.java +++ /dev/null @@ -1,87 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.rest; - -import me.zhengjie.annotation.Log; -import me.zhengjie.modules.oder.domain.BotSendOrderDetails; -import me.zhengjie.modules.oder.service.BotSendOrderDetailsService; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDetailsQueryCriteria; -import org.springframework.data.domain.Pageable; -import lombok.RequiredArgsConstructor; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; -import io.swagger.annotations.*; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; - -/** -* @website https://eladmin.vip -* @author admin -* @date 2023-10-31 -**/ -@RestController -@RequiredArgsConstructor -@Api(tags = "sendDetail管理") -@RequestMapping("/api/botSendOrderDetails") -public class BotSendOrderDetailsController { - - private final BotSendOrderDetailsService botSendOrderDetailsService; - - @Log("导出数据") - @ApiOperation("导出数据") - @GetMapping(value = "/download") - @PreAuthorize("@el.check('botSendOrderDetails:list')") - public void exportBotSendOrderDetails(HttpServletResponse response, BotSendOrderDetailsQueryCriteria criteria) throws IOException { - botSendOrderDetailsService.download(botSendOrderDetailsService.queryAll(criteria), response); - } - - @GetMapping - @Log("查询sendDetail") - @ApiOperation("查询sendDetail") - @PreAuthorize("@el.check('botSendOrderDetails:list')") - public ResponseEntity queryBotSendOrderDetails(BotSendOrderDetailsQueryCriteria criteria, Pageable pageable){ - return new ResponseEntity<>(botSendOrderDetailsService.queryAll(criteria,pageable),HttpStatus.OK); - } - - @PostMapping - @Log("新增sendDetail") - @ApiOperation("新增sendDetail") - @PreAuthorize("@el.check('botSendOrderDetails:add')") - public ResponseEntity createBotSendOrderDetails(@Validated @RequestBody BotSendOrderDetails resources){ - return new ResponseEntity<>(botSendOrderDetailsService.create(resources),HttpStatus.CREATED); - } - - @PutMapping - @Log("修改sendDetail") - @ApiOperation("修改sendDetail") - @PreAuthorize("@el.check('botSendOrderDetails:edit')") - public ResponseEntity updateBotSendOrderDetails(@Validated @RequestBody BotSendOrderDetails resources){ - botSendOrderDetailsService.update(resources); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @DeleteMapping - @Log("删除sendDetail") - @ApiOperation("删除sendDetail") - @PreAuthorize("@el.check('botSendOrderDetails:del')") - public ResponseEntity deleteBotSendOrderDetails(@RequestBody Integer[] ids) { - botSendOrderDetailsService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/ViewBoxOrderController.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/ViewBoxOrderController.java deleted file mode 100644 index 2198bca5..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/rest/ViewBoxOrderController.java +++ /dev/null @@ -1,87 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.rest; - -import me.zhengjie.annotation.Log; -import me.zhengjie.modules.oder.domain.ViewBoxOrder; -import me.zhengjie.modules.oder.service.ViewBoxOrderService; -import me.zhengjie.modules.oder.service.dto.ViewBoxOrderQueryCriteria; -import org.springframework.data.domain.Pageable; -import lombok.RequiredArgsConstructor; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; -import io.swagger.annotations.*; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; - -/** -* @website https://eladmin.vip -* @author admin -* @date 2023-06-23 -**/ -@RestController -@RequiredArgsConstructor -@Api(tags = "订单查询管理") -@RequestMapping("/api/viewBoxOrder") -public class ViewBoxOrderController { - - private final ViewBoxOrderService viewBoxOrderService; - - @Log("导出数据") - @ApiOperation("导出数据") - @GetMapping(value = "/download") - @PreAuthorize("@el.check('viewBoxOrder:list')") - public void exportViewBoxOrder(HttpServletResponse response, ViewBoxOrderQueryCriteria criteria) throws IOException { - viewBoxOrderService.download(viewBoxOrderService.queryAll(criteria), response); - } - - @GetMapping - @Log("查询订单查询") - @ApiOperation("查询订单查询") - @PreAuthorize("@el.check('viewBoxOrder:list')") - public ResponseEntity queryViewBoxOrder(ViewBoxOrderQueryCriteria criteria, Pageable pageable){ - return new ResponseEntity<>(viewBoxOrderService.queryAll(criteria,pageable),HttpStatus.OK); - } - - @PostMapping - @Log("新增订单查询") - @ApiOperation("新增订单查询") - @PreAuthorize("@el.check('viewBoxOrder:add')") - public ResponseEntity createViewBoxOrder(@Validated @RequestBody ViewBoxOrder resources){ - return new ResponseEntity<>(viewBoxOrderService.create(resources),HttpStatus.CREATED); - } - - @PutMapping - @Log("修改订单查询") - @ApiOperation("修改订单查询") - @PreAuthorize("@el.check('viewBoxOrder:edit')") - public ResponseEntity updateViewBoxOrder(@Validated @RequestBody ViewBoxOrder resources){ - viewBoxOrderService.update(resources); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @DeleteMapping - @Log("删除订单查询") - @ApiOperation("删除订单查询") - @PreAuthorize("@el.check('viewBoxOrder:del')") - public ResponseEntity deleteViewBoxOrder(@RequestBody Integer[] ids) { - viewBoxOrderService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsDto.java deleted file mode 100644 index 390a5b3f..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsDto.java +++ /dev/null @@ -1,84 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.service.dto; - -import lombok.Data; -import java.sql.Timestamp; -import java.math.BigDecimal; -import java.io.Serializable; - -/** -* @website https://eladmin.vip -* @description / -* @author admin -* @date 2023-10-31 -**/ -@Data -public class BotSendOrderDetailsDto implements Serializable { - - private Integer id; - - /** 订单号 */ - private String orderCode; - - /** 发包金额 */ - private BigDecimal chipTotal; - - /** 雷号 */ - private String bombNumber; - - /** 领取次数 */ - private String nowReceiveCount; - - /** 发送者电报号 */ - private String sendUserTelegramId; - - /** 发送者名称 */ - private String sendUserName; - - /** 发送者输赢状况 */ - private String sendUserStatus; - - /** 手续费 */ - private BigDecimal sendUserFee; - - /** 赔率 */ - private BigDecimal sendUserProfit; - - /** 抢红包者电报号 */ - private String getUserTelegramId; - - /** 抢红包者名称 */ - private String getUserName; - - /** 抢红包者输赢状况 */ - private String getUserStatus; - - /** 红包金额 */ - private BigDecimal getUserGetAmount; - - /** 手续费 */ - private BigDecimal getUserFee; - - /** 赔率 */ - private BigDecimal getUserProfit; - - private String specialPrizeType; - - private BigDecimal specialPrizeAmount; - - private Timestamp createTime; -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsQueryCriteria.java deleted file mode 100644 index 3e43848d..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDetailsQueryCriteria.java +++ /dev/null @@ -1,57 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.service.dto; - -import lombok.Data; -import java.util.List; -import me.zhengjie.annotation.Query; - -/** -* @website https://eladmin.vip -* @author admin -* @date 2023-10-31 -**/ -@Data -public class BotSendOrderDetailsQueryCriteria{ - - /** 精确 */ - @Query - private String orderCode; - - /** 精确 */ - @Query - private String sendUserTelegramId; - - /** 精确 */ - @Query - private String sendUserName; - - /** 精确 */ - @Query - private String sendUserStatus; - - /** 精确 */ - @Query - private String getUserTelegramId; - - /** 精确 */ - @Query - private String getUserName; - - /** 精确 */ - @Query - private String getUserStatus; -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDto.java deleted file mode 100644 index 2bf4047f..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderDto.java +++ /dev/null @@ -1,83 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.service.dto; - -import lombok.Data; -import java.sql.Timestamp; -import java.math.BigDecimal; -import java.io.Serializable; - -/** -* @website https://eladmin.vip -* @description / -* @author admin -* @date 2023-10-30 -**/ -@Data -public class BotSendOrderDto implements Serializable { - - private Integer id; - - /** 订单号 */ - private String orderCode; - - /** 消息id */ - private Integer messageId; - - /** 聊天id */ - private Long chatId; - - /** 用户电报号 */ - private String userTelegramId; - - /** 用户名称 */ - private String userName; - - /** 赔率 */ - private BigDecimal odds; - - /** 发包金额 */ - private BigDecimal chipTotal; - - /** 未抢完金额 */ - private BigDecimal chipRemain; - - /** 总盈利 */ - private BigDecimal profit; - - /** 雷号 */ - private String bombNumber; - - /** 领取次数 */ - private String nowReceiveCount; - - /** 状态 */ - private String status; - - /** 类型 */ - private String type; - - /** 价格 */ - private String btcPrice; - - private String gongZhengNum; - - /** 创建时间 */ - private Timestamp createTime; - - /** 更新时间 */ - private Timestamp updateTime; -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/ViewBoxOrderDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/ViewBoxOrderDto.java deleted file mode 100644 index 859af325..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/ViewBoxOrderDto.java +++ /dev/null @@ -1,78 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.service.dto; - -import lombok.Data; -import java.sql.Timestamp; -import java.math.BigDecimal; -import java.io.Serializable; - -/** -* @website https://eladmin.vip -* @description / -* @author admin -* @date 2023-06-23 -**/ -@Data -public class ViewBoxOrderDto implements Serializable { - - private Integer id; - - /** 下单人 */ - private Integer userId; - - /** 盲盒的单价 */ - private BigDecimal boxPrice; - - /** 购买数量 */ - private BigDecimal boxNumber; - - /** 支付代币code */ - private String payCoinName; - - /** 支付代币的当前单价(u) */ - private BigDecimal payCoinPrice; - - /** 总支付的token数量 */ - private BigDecimal payCoinTotal; - - /** 预计收益(USDT) */ - private BigDecimal payMinerTotal; - - /** 交易哈希 */ - private String txHash; - - /** 付款地址 */ - private String fromAddress; - - /** 收款地址 */ - private String toAddress; - - /** 链上确认状态 */ - private String confirmStatus; - - /** 订单描述 */ - private String remark; - - /** 创建时间 */ - private Timestamp createTime; - - /** 更新时间 */ - private Timestamp updateTime; - - /** 钱包地址 */ - private String address; -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderDetailsServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderDetailsServiceImpl.java deleted file mode 100644 index 10c7b753..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderDetailsServiceImpl.java +++ /dev/null @@ -1,121 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.service.impl; - -import me.zhengjie.modules.oder.domain.BotSendOrderDetails; -import me.zhengjie.utils.ValidationUtil; -import me.zhengjie.utils.FileUtil; -import lombok.RequiredArgsConstructor; -import me.zhengjie.modules.oder.repository.BotSendOrderDetailsRepository; -import me.zhengjie.modules.oder.service.BotSendOrderDetailsService; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDetailsDto; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDetailsQueryCriteria; -import me.zhengjie.modules.oder.service.mapstruct.BotSendOrderDetailsMapper; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; -import me.zhengjie.utils.PageUtil; -import me.zhengjie.utils.QueryHelp; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.LinkedHashMap; - -/** -* @website https://eladmin.vip -* @description 服务实现 -* @author admin -* @date 2023-10-31 -**/ -@Service -@RequiredArgsConstructor -public class BotSendOrderDetailsServiceImpl implements BotSendOrderDetailsService { - - private final BotSendOrderDetailsRepository botSendOrderDetailsRepository; - private final BotSendOrderDetailsMapper botSendOrderDetailsMapper; - - @Override - public Map queryAll(BotSendOrderDetailsQueryCriteria criteria, Pageable pageable){ - Page page = botSendOrderDetailsRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); - return PageUtil.toPage(page.map(botSendOrderDetailsMapper::toDto)); - } - - @Override - public List queryAll(BotSendOrderDetailsQueryCriteria criteria){ - return botSendOrderDetailsMapper.toDto(botSendOrderDetailsRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); - } - - @Override - @Transactional - public BotSendOrderDetailsDto findById(Integer id) { - BotSendOrderDetails botSendOrderDetails = botSendOrderDetailsRepository.findById(id).orElseGet(BotSendOrderDetails::new); - ValidationUtil.isNull(botSendOrderDetails.getId(),"BotSendOrderDetails","id",id); - return botSendOrderDetailsMapper.toDto(botSendOrderDetails); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public BotSendOrderDetailsDto create(BotSendOrderDetails resources) { - return botSendOrderDetailsMapper.toDto(botSendOrderDetailsRepository.save(resources)); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(BotSendOrderDetails resources) { - BotSendOrderDetails botSendOrderDetails = botSendOrderDetailsRepository.findById(resources.getId()).orElseGet(BotSendOrderDetails::new); - ValidationUtil.isNull( botSendOrderDetails.getId(),"BotSendOrderDetails","id",resources.getId()); - botSendOrderDetails.copy(resources); - botSendOrderDetailsRepository.save(botSendOrderDetails); - } - - @Override - public void deleteAll(Integer[] ids) { - for (Integer id : ids) { - botSendOrderDetailsRepository.deleteById(id); - } - } - - @Override - public void download(List all, HttpServletResponse response) throws IOException { - List> list = new ArrayList<>(); - for (BotSendOrderDetailsDto botSendOrderDetails : all) { - Map map = new LinkedHashMap<>(); - map.put("订单号", botSendOrderDetails.getOrderCode()); - map.put("发包金额", botSendOrderDetails.getChipTotal()); - map.put("雷号", botSendOrderDetails.getBombNumber()); - map.put("领取次数", botSendOrderDetails.getNowReceiveCount()); - map.put("发送者电报号", botSendOrderDetails.getSendUserTelegramId()); - map.put("发送者名称", botSendOrderDetails.getSendUserName()); - map.put("发送者输赢状况", botSendOrderDetails.getSendUserStatus()); - map.put("手续费", botSendOrderDetails.getSendUserFee()); - map.put("赔率", botSendOrderDetails.getSendUserProfit()); - map.put("抢红包者电报号", botSendOrderDetails.getGetUserTelegramId()); - map.put("抢红包者名称", botSendOrderDetails.getGetUserName()); - map.put("抢红包者输赢状况", botSendOrderDetails.getGetUserStatus()); - map.put("红包金额", botSendOrderDetails.getGetUserGetAmount()); - map.put("手续费", botSendOrderDetails.getGetUserFee()); - map.put("赔率", botSendOrderDetails.getGetUserProfit()); - map.put(" specialPrizeType", botSendOrderDetails.getSpecialPrizeType()); - map.put(" specialPrizeAmount", botSendOrderDetails.getSpecialPrizeAmount()); - map.put(" createTime", botSendOrderDetails.getCreateTime()); - list.add(map); - } - FileUtil.downloadExcel(list, response); - } -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderServiceImpl.java deleted file mode 100644 index 104ea48c..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/BotSendOrderServiceImpl.java +++ /dev/null @@ -1,120 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.service.impl; - -import me.zhengjie.modules.oder.domain.BotSendOrder; -import me.zhengjie.utils.ValidationUtil; -import me.zhengjie.utils.FileUtil; -import lombok.RequiredArgsConstructor; -import me.zhengjie.modules.oder.repository.BotSendOrderRepository; -import me.zhengjie.modules.oder.service.BotSendOrderService; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDto; -import me.zhengjie.modules.oder.service.dto.BotSendOrderQueryCriteria; -import me.zhengjie.modules.oder.service.mapstruct.BotSendOrderMapper; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; -import me.zhengjie.utils.PageUtil; -import me.zhengjie.utils.QueryHelp; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.LinkedHashMap; - -/** -* @website https://eladmin.vip -* @description 服务实现 -* @author admin -* @date 2023-10-30 -**/ -@Service -@RequiredArgsConstructor -public class BotSendOrderServiceImpl implements BotSendOrderService { - - private final BotSendOrderRepository botSendOrderRepository; - private final BotSendOrderMapper botSendOrderMapper; - - @Override - public Map queryAll(BotSendOrderQueryCriteria criteria, Pageable pageable){ - Page page = botSendOrderRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); - return PageUtil.toPage(page.map(botSendOrderMapper::toDto)); - } - - @Override - public List queryAll(BotSendOrderQueryCriteria criteria){ - return botSendOrderMapper.toDto(botSendOrderRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); - } - - @Override - @Transactional - public BotSendOrderDto findById(Integer id) { - BotSendOrder botSendOrder = botSendOrderRepository.findById(id).orElseGet(BotSendOrder::new); - ValidationUtil.isNull(botSendOrder.getId(),"BotSendOrder","id",id); - return botSendOrderMapper.toDto(botSendOrder); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public BotSendOrderDto create(BotSendOrder resources) { - return botSendOrderMapper.toDto(botSendOrderRepository.save(resources)); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(BotSendOrder resources) { - BotSendOrder botSendOrder = botSendOrderRepository.findById(resources.getId()).orElseGet(BotSendOrder::new); - ValidationUtil.isNull( botSendOrder.getId(),"BotSendOrder","id",resources.getId()); - botSendOrder.copy(resources); - botSendOrderRepository.save(botSendOrder); - } - - @Override - public void deleteAll(Integer[] ids) { - for (Integer id : ids) { - botSendOrderRepository.deleteById(id); - } - } - - @Override - public void download(List all, HttpServletResponse response) throws IOException { - List> list = new ArrayList<>(); - for (BotSendOrderDto botSendOrder : all) { - Map map = new LinkedHashMap<>(); - map.put("订单号", botSendOrder.getOrderCode()); - map.put("消息id", botSendOrder.getMessageId()); - map.put("聊天id", botSendOrder.getChatId()); - map.put("用户电报号", botSendOrder.getUserTelegramId()); - map.put("用户名称", botSendOrder.getUserName()); - map.put("赔率", botSendOrder.getOdds()); - map.put("发包金额", botSendOrder.getChipTotal()); - map.put("未抢完金额", botSendOrder.getChipRemain()); - map.put("总盈利", botSendOrder.getProfit()); - map.put("雷号", botSendOrder.getBombNumber()); - map.put("领取次数", botSendOrder.getNowReceiveCount()); - map.put("状态", botSendOrder.getStatus()); - map.put("类型", botSendOrder.getType()); - map.put("价格", botSendOrder.getBtcPrice()); - map.put(" gongZhengNum", botSendOrder.getGongZhengNum()); - map.put("创建时间", botSendOrder.getCreateTime()); - map.put("更新时间", botSendOrder.getUpdateTime()); - list.add(map); - } - FileUtil.downloadExcel(list, response); - } -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/ViewBoxOrderServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/ViewBoxOrderServiceImpl.java deleted file mode 100644 index fa327e42..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/impl/ViewBoxOrderServiceImpl.java +++ /dev/null @@ -1,118 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.oder.service.impl; - -import me.zhengjie.modules.oder.domain.ViewBoxOrder; -import me.zhengjie.utils.ValidationUtil; -import me.zhengjie.utils.FileUtil; -import lombok.RequiredArgsConstructor; -import me.zhengjie.modules.oder.repository.ViewBoxOrderRepository; -import me.zhengjie.modules.oder.service.ViewBoxOrderService; -import me.zhengjie.modules.oder.service.dto.ViewBoxOrderDto; -import me.zhengjie.modules.oder.service.dto.ViewBoxOrderQueryCriteria; -import me.zhengjie.modules.oder.service.mapstruct.ViewBoxOrderMapper; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; -import me.zhengjie.utils.PageUtil; -import me.zhengjie.utils.QueryHelp; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.LinkedHashMap; - -/** -* @website https://eladmin.vip -* @description 服务实现 -* @author admin -* @date 2023-06-23 -**/ -@Service -@RequiredArgsConstructor -public class ViewBoxOrderServiceImpl implements ViewBoxOrderService { - - private final ViewBoxOrderRepository viewBoxOrderRepository; - private final ViewBoxOrderMapper viewBoxOrderMapper; - - @Override - public Map queryAll(ViewBoxOrderQueryCriteria criteria, Pageable pageable){ - Page page = viewBoxOrderRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); - return PageUtil.toPage(page.map(viewBoxOrderMapper::toDto)); - } - - @Override - public List queryAll(ViewBoxOrderQueryCriteria criteria){ - return viewBoxOrderMapper.toDto(viewBoxOrderRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); - } - - @Override - @Transactional - public ViewBoxOrderDto findById(Integer id) { - ViewBoxOrder viewBoxOrder = viewBoxOrderRepository.findById(id).orElseGet(ViewBoxOrder::new); - ValidationUtil.isNull(viewBoxOrder.getId(),"ViewBoxOrder","id",id); - return viewBoxOrderMapper.toDto(viewBoxOrder); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public ViewBoxOrderDto create(ViewBoxOrder resources) { - return viewBoxOrderMapper.toDto(viewBoxOrderRepository.save(resources)); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(ViewBoxOrder resources) { - ViewBoxOrder viewBoxOrder = viewBoxOrderRepository.findById(resources.getId()).orElseGet(ViewBoxOrder::new); - ValidationUtil.isNull( viewBoxOrder.getId(),"ViewBoxOrder","id",resources.getId()); - viewBoxOrder.copy(resources); - viewBoxOrderRepository.save(viewBoxOrder); - } - - @Override - public void deleteAll(Integer[] ids) { - for (Integer id : ids) { - viewBoxOrderRepository.deleteById(id); - } - } - - @Override - public void download(List all, HttpServletResponse response) throws IOException { - List> list = new ArrayList<>(); - for (ViewBoxOrderDto viewBoxOrder : all) { - Map map = new LinkedHashMap<>(); - map.put("下单人", viewBoxOrder.getUserId()); - map.put("盲盒的单价", viewBoxOrder.getBoxPrice()); - map.put("购买数量", viewBoxOrder.getBoxNumber()); - map.put("支付代币code", viewBoxOrder.getPayCoinName()); - map.put("支付代币的当前单价(u)", viewBoxOrder.getPayCoinPrice()); - map.put("总支付的token数量", viewBoxOrder.getPayCoinTotal()); - map.put(" 预计收益(USDT)", viewBoxOrder.getPayMinerTotal()); - map.put("交易哈希", viewBoxOrder.getTxHash()); - map.put("付款地址", viewBoxOrder.getFromAddress()); - map.put("收款地址", viewBoxOrder.getToAddress()); - map.put("链上确认状态", viewBoxOrder.getConfirmStatus()); - map.put("订单描述", viewBoxOrder.getRemark()); - map.put("创建时间", viewBoxOrder.getCreateTime()); - map.put("更新时间", viewBoxOrder.getUpdateTime()); - map.put("钱包地址", viewBoxOrder.getAddress()); - list.add(map); - } - FileUtil.downloadExcel(list, response); - } -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/domain/TbCashierCart.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/domain/TbCashierCart.java new file mode 100644 index 00000000..88ce860c --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/domain/TbCashierCart.java @@ -0,0 +1,156 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.cashierCart.domain; + +import lombok.Data; +import cn.hutool.core.bean.BeanUtil; +import io.swagger.annotations.ApiModelProperty; +import cn.hutool.core.bean.copier.CopyOptions; +import javax.persistence.*; +import javax.validation.constraints.*; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-02 +**/ +@Entity +@Data +@Table(name="tb_cashier_cart") +public class TbCashierCart implements Serializable { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "`id`") + @ApiModelProperty(value = "id") + private Integer id; + + @Column(name = "`master_id`") + @ApiModelProperty(value = "主单Id") + private String masterId; + + @Column(name = "`order_id`") + @ApiModelProperty(value = "本次下单Id") + private Integer orderId; + + @Column(name = "`ref_order_id`") + @ApiModelProperty(value = "退单Id") + private Integer refOrderId; + + @Column(name = "`total_amount`") + @ApiModelProperty(value = "购物车总额") + private BigDecimal totalAmount; + + @Column(name = "`product_id`") + @ApiModelProperty(value = "商品Id") + private String productId; + + @Column(name = "`cover_img`") + @ApiModelProperty(value = "商品图片") + private String coverImg; + + @Column(name = "`is_sku`") + @ApiModelProperty(value = "是否sku") + private String isSku; + + @Column(name = "`sku_id`") + @ApiModelProperty(value = "skuId") + private String skuId; + + @Column(name = "`name`") + @ApiModelProperty(value = "商品名") + private String name; + + @Column(name = "`sale_price`") + @ApiModelProperty(value = "单价") + private BigDecimal salePrice; + + @Column(name = "`number`",nullable = false) + @NotNull + @ApiModelProperty(value = "结余数量") + private Integer number; + + @Column(name = "`total_number`") + @ApiModelProperty(value = "总下单数量") + private Integer totalNumber; + + @Column(name = "`refund_number`") + @ApiModelProperty(value = "退单数量") + private Integer refundNumber; + + @Column(name = "`category_id`") + @ApiModelProperty(value = "分类Id") + private String categoryId; + + @Column(name = "`status`") + @ApiModelProperty(value = "'购物车关闭 closed',' 购物车挂起 refund',' 购物车列表生效create',' 购物车完成final'") + private String status; + + @Column(name = "`type`") + @ApiModelProperty(value = "是否为组合商品 0-单商品 1为组合商品") + private Integer type; + + @Column(name = "`merchant_id`") + @ApiModelProperty(value = "商户Id") + private String merchantId; + + @Column(name = "`shop_id`") + @ApiModelProperty(value = "店铺Id") + private String shopId; + + @Column(name = "`created_at`") + @ApiModelProperty(value = "createdAt") + private Long createdAt; + + @Column(name = "`updated_at`") + @ApiModelProperty(value = "updatedAt") + private Long updatedAt; + + @Column(name = "`user_id`") + @ApiModelProperty(value = "用户的openId") + private Integer userId; + + @Column(name = "`table_id`") + @ApiModelProperty(value = "台桌id") + private Integer tableId; + + @Column(name = "`pack_fee`") + @ApiModelProperty(value = "打包费") + private BigDecimal packFee; + + @Column(name = "`trade_day`") + @ApiModelProperty(value = "tradeDay") + private String tradeDay; + + @Column(name = "`is_pack`") + @ApiModelProperty(value = "isPack") + private String isPack; + + @Column(name = "`is_gift`") + @ApiModelProperty(value = "isGift") + private String isGift; + + @Column(name = "`pending_at`") + @ApiModelProperty(value = "pendingAt") + private Long pendingAt; + + public void copy(TbCashierCart source){ + BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/ViewBoxOrderRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/repository/TbCashierCartRepository.java similarity index 72% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/ViewBoxOrderRepository.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/repository/TbCashierCartRepository.java index 02d795bf..c7b5ea32 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/ViewBoxOrderRepository.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/repository/TbCashierCartRepository.java @@ -13,16 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.repository; +package me.zhengjie.modules.order.cashierCart.repository; -import me.zhengjie.modules.oder.domain.ViewBoxOrder; +import me.zhengjie.modules.order.cashierCart.domain.TbCashierCart; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; /** * @website https://eladmin.vip -* @author admin -* @date 2023-06-23 +* @author lyf +* @date 2024-03-02 **/ -public interface ViewBoxOrderRepository extends JpaRepository, JpaSpecificationExecutor { +public interface TbCashierCartRepository extends JpaRepository, JpaSpecificationExecutor { } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/rest/TbCashierCartController.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/rest/TbCashierCartController.java new file mode 100644 index 00000000..4c521dba --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/rest/TbCashierCartController.java @@ -0,0 +1,82 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.cashierCart.rest; + +import me.zhengjie.annotation.Log; +import me.zhengjie.modules.order.cashierCart.domain.TbCashierCart; +import me.zhengjie.modules.order.cashierCart.service.TbCashierCartService; +import me.zhengjie.modules.order.cashierCart.service.dto.TbCashierCartQueryCriteria; +import org.springframework.data.domain.Pageable; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.*; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-02 +**/ +@RestController +@RequiredArgsConstructor +@Api(tags = "/cashierCart管理") +@RequestMapping("/api/tbCashierCart") +public class TbCashierCartController { + + private final TbCashierCartService tbCashierCartService; + + @Log("导出数据") + @ApiOperation("导出数据") + @GetMapping(value = "/download") + public void exportTbCashierCart(HttpServletResponse response, TbCashierCartQueryCriteria criteria) throws IOException { + tbCashierCartService.download(tbCashierCartService.queryAll(criteria), response); + } + + @GetMapping + @Log("查询/cashierCart") + @ApiOperation("查询/cashierCart") + public ResponseEntity queryTbCashierCart(TbCashierCartQueryCriteria criteria, Pageable pageable){ + return new ResponseEntity<>(tbCashierCartService.queryAll(criteria,pageable),HttpStatus.OK); + } + + @PostMapping + @Log("新增/cashierCart") + @ApiOperation("新增/cashierCart") + public ResponseEntity createTbCashierCart(@Validated @RequestBody TbCashierCart resources){ + return new ResponseEntity<>(tbCashierCartService.create(resources),HttpStatus.CREATED); + } + + @PutMapping + @Log("修改/cashierCart") + @ApiOperation("修改/cashierCart") + public ResponseEntity updateTbCashierCart(@Validated @RequestBody TbCashierCart resources){ + tbCashierCartService.update(resources); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @DeleteMapping + @Log("删除/cashierCart") + @ApiOperation("删除/cashierCart") + public ResponseEntity deleteTbCashierCart(@RequestBody Integer[] ids) { + tbCashierCartService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/ViewBoxOrderService.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/TbCashierCartService.java similarity index 62% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/ViewBoxOrderService.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/TbCashierCartService.java index 3396cb03..a023d556 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/ViewBoxOrderService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/TbCashierCartService.java @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service; +package me.zhengjie.modules.order.cashierCart.service; -import me.zhengjie.modules.oder.domain.ViewBoxOrder; -import me.zhengjie.modules.oder.service.dto.ViewBoxOrderDto; -import me.zhengjie.modules.oder.service.dto.ViewBoxOrderQueryCriteria; +import me.zhengjie.modules.order.cashierCart.domain.TbCashierCart; +import me.zhengjie.modules.order.cashierCart.service.dto.TbCashierCartDto; +import me.zhengjie.modules.order.cashierCart.service.dto.TbCashierCartQueryCriteria; import org.springframework.data.domain.Pageable; import java.util.Map; import java.util.List; @@ -27,10 +27,10 @@ import javax.servlet.http.HttpServletResponse; /** * @website https://eladmin.vip * @description 服务接口 -* @author admin -* @date 2023-06-23 +* @author lyf +* @date 2024-03-02 **/ -public interface ViewBoxOrderService { +public interface TbCashierCartService { /** * 查询数据分页 @@ -38,34 +38,34 @@ public interface ViewBoxOrderService { * @param pageable 分页参数 * @return Map */ - Map queryAll(ViewBoxOrderQueryCriteria criteria, Pageable pageable); + Map queryAll(TbCashierCartQueryCriteria criteria, Pageable pageable); /** * 查询所有数据不分页 * @param criteria 条件参数 - * @return List + * @return List */ - List queryAll(ViewBoxOrderQueryCriteria criteria); + List queryAll(TbCashierCartQueryCriteria criteria); /** * 根据ID查询 * @param id ID - * @return ViewBoxOrderDto + * @return TbCashierCartDto */ - ViewBoxOrderDto findById(Integer id); + TbCashierCartDto findById(Integer id); /** * 创建 * @param resources / - * @return ViewBoxOrderDto + * @return TbCashierCartDto */ - ViewBoxOrderDto create(ViewBoxOrder resources); + TbCashierCartDto create(TbCashierCart resources); /** * 编辑 * @param resources / */ - void update(ViewBoxOrder resources); + void update(TbCashierCart resources); /** * 多选删除 @@ -79,5 +79,5 @@ public interface ViewBoxOrderService { * @param response / * @throws IOException / */ - void download(List all, HttpServletResponse response) throws IOException; + void download(List all, HttpServletResponse response) throws IOException; } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartDto.java new file mode 100644 index 00000000..ef28bfa6 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartDto.java @@ -0,0 +1,108 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.cashierCart.service.dto; + +import lombok.Data; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-02 +**/ +@Data +public class TbCashierCartDto implements Serializable { + + /** id */ + private Integer id; + + /** 主单Id */ + private String masterId; + + /** 本次下单Id */ + private Integer orderId; + + /** 退单Id */ + private Integer refOrderId; + + /** 购物车总额 */ + private BigDecimal totalAmount; + + /** 商品Id */ + private String productId; + + /** 商品图片 */ + private String coverImg; + + /** 是否sku */ + private String isSku; + + /** skuId */ + private String skuId; + + /** 商品名 */ + private String name; + + /** 单价 */ + private BigDecimal salePrice; + + /** 结余数量 */ + private Integer number; + + /** 总下单数量 */ + private Integer totalNumber; + + /** 退单数量 */ + private Integer refundNumber; + + /** 分类Id */ + private String categoryId; + + /** '购物车关闭 closed',' 购物车挂起 refund',' 购物车列表生效create',' 购物车完成final' */ + private String status; + + /** 是否为组合商品 0-单商品 1为组合商品 */ + private Integer type; + + /** 商户Id */ + private String merchantId; + + /** 店铺Id */ + private String shopId; + + private Long createdAt; + + private Long updatedAt; + + /** 用户的openId */ + private Integer userId; + + /** 台桌id */ + private Integer tableId; + + /** 打包费 */ + private BigDecimal packFee; + + private String tradeDay; + + private String isPack; + + private String isGift; + + private Long pendingAt; +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartQueryCriteria.java new file mode 100644 index 00000000..0b300c7e --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/dto/TbCashierCartQueryCriteria.java @@ -0,0 +1,29 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.cashierCart.service.dto; + +import lombok.Data; +import java.util.List; +import me.zhengjie.annotation.Query; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-02 +**/ +@Data +public class TbCashierCartQueryCriteria{ +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/impl/TbCashierCartServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/impl/TbCashierCartServiceImpl.java new file mode 100644 index 00000000..fd065c2b --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/impl/TbCashierCartServiceImpl.java @@ -0,0 +1,130 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.cashierCart.service.impl; + +import me.zhengjie.modules.order.cashierCart.domain.TbCashierCart; +import me.zhengjie.utils.ValidationUtil; +import me.zhengjie.utils.FileUtil; +import lombok.RequiredArgsConstructor; +import me.zhengjie.modules.order.cashierCart.repository.TbCashierCartRepository; +import me.zhengjie.modules.order.cashierCart.service.TbCashierCartService; +import me.zhengjie.modules.order.cashierCart.service.dto.TbCashierCartDto; +import me.zhengjie.modules.order.cashierCart.service.dto.TbCashierCartQueryCriteria; +import me.zhengjie.modules.order.cashierCart.service.mapstruct.TbCashierCartMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import me.zhengjie.utils.PageUtil; +import me.zhengjie.utils.QueryHelp; +import java.util.List; +import java.util.Map; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.LinkedHashMap; + +/** +* @website https://eladmin.vip +* @description 服务实现 +* @author lyf +* @date 2024-03-02 +**/ +@Service +@RequiredArgsConstructor +public class TbCashierCartServiceImpl implements TbCashierCartService { + + private final TbCashierCartRepository tbCashierCartRepository; + private final TbCashierCartMapper tbCashierCartMapper; + + @Override + public Map queryAll(TbCashierCartQueryCriteria criteria, Pageable pageable){ + Page page = tbCashierCartRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); + return PageUtil.toPage(page.map(tbCashierCartMapper::toDto)); + } + + @Override + public List queryAll(TbCashierCartQueryCriteria criteria){ + return tbCashierCartMapper.toDto(tbCashierCartRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); + } + + @Override + @Transactional + public TbCashierCartDto findById(Integer id) { + TbCashierCart tbCashierCart = tbCashierCartRepository.findById(id).orElseGet(TbCashierCart::new); + ValidationUtil.isNull(tbCashierCart.getId(),"TbCashierCart","id",id); + return tbCashierCartMapper.toDto(tbCashierCart); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public TbCashierCartDto create(TbCashierCart resources) { + return tbCashierCartMapper.toDto(tbCashierCartRepository.save(resources)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(TbCashierCart resources) { + TbCashierCart tbCashierCart = tbCashierCartRepository.findById(resources.getId()).orElseGet(TbCashierCart::new); + ValidationUtil.isNull( tbCashierCart.getId(),"TbCashierCart","id",resources.getId()); + tbCashierCart.copy(resources); + tbCashierCartRepository.save(tbCashierCart); + } + + @Override + public void deleteAll(Integer[] ids) { + for (Integer id : ids) { + tbCashierCartRepository.deleteById(id); + } + } + + @Override + public void download(List all, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + for (TbCashierCartDto tbCashierCart : all) { + Map map = new LinkedHashMap<>(); + map.put("主单Id", tbCashierCart.getMasterId()); + map.put("本次下单Id", tbCashierCart.getOrderId()); + map.put("退单Id", tbCashierCart.getRefOrderId()); + map.put("购物车总额", tbCashierCart.getTotalAmount()); + map.put("商品Id", tbCashierCart.getProductId()); + map.put("商品图片", tbCashierCart.getCoverImg()); + map.put("是否sku", tbCashierCart.getIsSku()); + map.put("skuId", tbCashierCart.getSkuId()); + map.put("商品名", tbCashierCart.getName()); + map.put("单价", tbCashierCart.getSalePrice()); + map.put("结余数量", tbCashierCart.getNumber()); + map.put("总下单数量", tbCashierCart.getTotalNumber()); + map.put("退单数量", tbCashierCart.getRefundNumber()); + map.put("分类Id", tbCashierCart.getCategoryId()); + map.put("'购物车关闭 closed',' 购物车挂起 refund',' 购物车列表生效create',' 购物车完成final'", tbCashierCart.getStatus()); + map.put("是否为组合商品 0-单商品 1为组合商品", tbCashierCart.getType()); + map.put("商户Id", tbCashierCart.getMerchantId()); + map.put("店铺Id", tbCashierCart.getShopId()); + map.put(" createdAt", tbCashierCart.getCreatedAt()); + map.put(" updatedAt", tbCashierCart.getUpdatedAt()); + map.put("用户的openId", tbCashierCart.getUserId()); + map.put("台桌id", tbCashierCart.getTableId()); + map.put("打包费", tbCashierCart.getPackFee()); + map.put(" tradeDay", tbCashierCart.getTradeDay()); + map.put(" isPack", tbCashierCart.getIsPack()); + map.put(" isGift", tbCashierCart.getIsGift()); + map.put(" pendingAt", tbCashierCart.getPendingAt()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/BotSendOrderDetailsMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/mapstruct/TbCashierCartMapper.java similarity index 71% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/BotSendOrderDetailsMapper.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/mapstruct/TbCashierCartMapper.java index 92f52232..d707e881 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/BotSendOrderDetailsMapper.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/cashierCart/service/mapstruct/TbCashierCartMapper.java @@ -13,20 +13,20 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service.mapstruct; +package me.zhengjie.modules.order.cashierCart.service.mapstruct; import me.zhengjie.base.BaseMapper; -import me.zhengjie.modules.oder.domain.BotSendOrderDetails; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDetailsDto; +import me.zhengjie.modules.order.cashierCart.domain.TbCashierCart; +import me.zhengjie.modules.order.cashierCart.service.dto.TbCashierCartDto; import org.mapstruct.Mapper; import org.mapstruct.ReportingPolicy; /** * @website https://eladmin.vip -* @author admin -* @date 2023-10-31 +* @author lyf +* @date 2024-03-02 **/ @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) -public interface BotSendOrderDetailsMapper extends BaseMapper { +public interface TbCashierCartMapper extends BaseMapper { } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/domain/TbOrderDetail.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/domain/TbOrderDetail.java new file mode 100644 index 00000000..10d32761 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/domain/TbOrderDetail.java @@ -0,0 +1,105 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.orderDetail.domain; + +import lombok.Data; +import cn.hutool.core.bean.BeanUtil; +import io.swagger.annotations.ApiModelProperty; +import cn.hutool.core.bean.copier.CopyOptions; +import javax.persistence.*; +import javax.validation.constraints.*; +import java.sql.Timestamp; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-02 +**/ +@Entity +@Data +@Table(name="tb_order_detail") +public class TbOrderDetail implements Serializable { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "`id`") + @ApiModelProperty(value = "id") + private Integer id; + + @Column(name = "`order_id`") + @ApiModelProperty(value = "orderId") + private Integer orderId; + + @Column(name = "`shop_id`") + @ApiModelProperty(value = "shopId") + private Integer shopId; + + @Column(name = "`product_id`") + @ApiModelProperty(value = "productId") + private Integer productId; + + @Column(name = "`product_sku_id`") + @ApiModelProperty(value = "productSkuId") + private Integer productSkuId; + + @Column(name = "`num`") + @ApiModelProperty(value = "num") + private Integer num; + + @Column(name = "`product_name`") + @ApiModelProperty(value = "productName") + private String productName; + + @Column(name = "`product_sku_name`") + @ApiModelProperty(value = "productSkuName") + private String productSkuName; + + @Column(name = "`product_img`") + @ApiModelProperty(value = "productImg") + private String productImg; + + @Column(name = "`create_time`") + @ApiModelProperty(value = "createTime") + private Timestamp createTime; + + @Column(name = "`update_time`") + @ApiModelProperty(value = "updateTime") + private Timestamp updateTime; + + @Column(name = "`price`") + @ApiModelProperty(value = "price") + private BigDecimal price; + + @Column(name = "`price_amount`") + @ApiModelProperty(value = "priceAmount") + private BigDecimal priceAmount; + + @Column(name = "`status`") + @ApiModelProperty(value = "status") + private String status; + + @Column(name = "`pack_amount`",nullable = false) + @NotNull + @ApiModelProperty(value = "打包费") + private BigDecimal packAmount; + + public void copy(TbOrderDetail source){ + BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/BotSendOrderDetailsRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/repository/TbOrderDetailRepository.java similarity index 72% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/BotSendOrderDetailsRepository.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/repository/TbOrderDetailRepository.java index 3ec131b8..634e7611 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/BotSendOrderDetailsRepository.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/repository/TbOrderDetailRepository.java @@ -13,16 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.repository; +package me.zhengjie.modules.order.orderDetail.repository; -import me.zhengjie.modules.oder.domain.BotSendOrderDetails; +import me.zhengjie.modules.order.orderDetail.domain.TbOrderDetail; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; /** * @website https://eladmin.vip -* @author admin -* @date 2023-10-31 +* @author lyf +* @date 2024-03-02 **/ -public interface BotSendOrderDetailsRepository extends JpaRepository, JpaSpecificationExecutor { +public interface TbOrderDetailRepository extends JpaRepository, JpaSpecificationExecutor { } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/rest/TbOrderDetailController.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/rest/TbOrderDetailController.java new file mode 100644 index 00000000..04527bc7 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/rest/TbOrderDetailController.java @@ -0,0 +1,82 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.orderDetail.rest; + +import me.zhengjie.annotation.Log; +import me.zhengjie.modules.order.orderDetail.domain.TbOrderDetail; +import me.zhengjie.modules.order.orderDetail.service.TbOrderDetailService; +import me.zhengjie.modules.order.orderDetail.service.dto.TbOrderDetailQueryCriteria; +import org.springframework.data.domain.Pageable; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.*; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-02 +**/ +@RestController +@RequiredArgsConstructor +@Api(tags = "/orderDetail管理") +@RequestMapping("/api/tbOrderDetail") +public class TbOrderDetailController { + + private final TbOrderDetailService tbOrderDetailService; + + @Log("导出数据") + @ApiOperation("导出数据") + @GetMapping(value = "/download") + public void exportTbOrderDetail(HttpServletResponse response, TbOrderDetailQueryCriteria criteria) throws IOException { + tbOrderDetailService.download(tbOrderDetailService.queryAll(criteria), response); + } + + @GetMapping + @Log("查询/orderDetail") + @ApiOperation("查询/orderDetail") + public ResponseEntity queryTbOrderDetail(TbOrderDetailQueryCriteria criteria, Pageable pageable){ + return new ResponseEntity<>(tbOrderDetailService.queryAll(criteria,pageable),HttpStatus.OK); + } + + @PostMapping + @Log("新增/orderDetail") + @ApiOperation("新增/orderDetail") + public ResponseEntity createTbOrderDetail(@Validated @RequestBody TbOrderDetail resources){ + return new ResponseEntity<>(tbOrderDetailService.create(resources),HttpStatus.CREATED); + } + + @PutMapping + @Log("修改/orderDetail") + @ApiOperation("修改/orderDetail") + public ResponseEntity updateTbOrderDetail(@Validated @RequestBody TbOrderDetail resources){ + tbOrderDetailService.update(resources); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @DeleteMapping + @Log("删除/orderDetail") + @ApiOperation("删除/orderDetail") + public ResponseEntity deleteTbOrderDetail(@RequestBody Integer[] ids) { + tbOrderDetailService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/BotSendOrderDetailsService.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/TbOrderDetailService.java similarity index 61% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/BotSendOrderDetailsService.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/TbOrderDetailService.java index 53f576cd..e8cf387d 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/BotSendOrderDetailsService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/TbOrderDetailService.java @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service; +package me.zhengjie.modules.order.orderDetail.service; -import me.zhengjie.modules.oder.domain.BotSendOrderDetails; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDetailsDto; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDetailsQueryCriteria; +import me.zhengjie.modules.order.orderDetail.domain.TbOrderDetail; +import me.zhengjie.modules.order.orderDetail.service.dto.TbOrderDetailDto; +import me.zhengjie.modules.order.orderDetail.service.dto.TbOrderDetailQueryCriteria; import org.springframework.data.domain.Pageable; import java.util.Map; import java.util.List; @@ -27,10 +27,10 @@ import javax.servlet.http.HttpServletResponse; /** * @website https://eladmin.vip * @description 服务接口 -* @author admin -* @date 2023-10-31 +* @author lyf +* @date 2024-03-02 **/ -public interface BotSendOrderDetailsService { +public interface TbOrderDetailService { /** * 查询数据分页 @@ -38,34 +38,34 @@ public interface BotSendOrderDetailsService { * @param pageable 分页参数 * @return Map */ - Map queryAll(BotSendOrderDetailsQueryCriteria criteria, Pageable pageable); + Map queryAll(TbOrderDetailQueryCriteria criteria, Pageable pageable); /** * 查询所有数据不分页 * @param criteria 条件参数 - * @return List + * @return List */ - List queryAll(BotSendOrderDetailsQueryCriteria criteria); + List queryAll(TbOrderDetailQueryCriteria criteria); /** * 根据ID查询 * @param id ID - * @return BotSendOrderDetailsDto + * @return TbOrderDetailDto */ - BotSendOrderDetailsDto findById(Integer id); + TbOrderDetailDto findById(Integer id); /** * 创建 * @param resources / - * @return BotSendOrderDetailsDto + * @return TbOrderDetailDto */ - BotSendOrderDetailsDto create(BotSendOrderDetails resources); + TbOrderDetailDto create(TbOrderDetail resources); /** * 编辑 * @param resources / */ - void update(BotSendOrderDetails resources); + void update(TbOrderDetail resources); /** * 多选删除 @@ -79,5 +79,5 @@ public interface BotSendOrderDetailsService { * @param response / * @throws IOException / */ - void download(List all, HttpServletResponse response) throws IOException; + void download(List all, HttpServletResponse response) throws IOException; } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailDto.java new file mode 100644 index 00000000..7ac1ae4a --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailDto.java @@ -0,0 +1,62 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.orderDetail.service.dto; + +import lombok.Data; +import java.sql.Timestamp; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-02 +**/ +@Data +public class TbOrderDetailDto implements Serializable { + + private Integer id; + + private Integer orderId; + + private Integer shopId; + + private Integer productId; + + private Integer productSkuId; + + private Integer num; + + private String productName; + + private String productSkuName; + + private String productImg; + + private Timestamp createTime; + + private Timestamp updateTime; + + private BigDecimal price; + + private BigDecimal priceAmount; + + private String status; + + /** 打包费 */ + private BigDecimal packAmount; +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailQueryCriteria.java new file mode 100644 index 00000000..616f089f --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/dto/TbOrderDetailQueryCriteria.java @@ -0,0 +1,29 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.orderDetail.service.dto; + +import lombok.Data; +import java.util.List; +import me.zhengjie.annotation.Query; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-02 +**/ +@Data +public class TbOrderDetailQueryCriteria{ +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/impl/TbOrderDetailServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/impl/TbOrderDetailServiceImpl.java new file mode 100644 index 00000000..78482124 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/impl/TbOrderDetailServiceImpl.java @@ -0,0 +1,117 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.orderDetail.service.impl; + +import me.zhengjie.modules.order.orderDetail.domain.TbOrderDetail; +import me.zhengjie.utils.ValidationUtil; +import me.zhengjie.utils.FileUtil; +import lombok.RequiredArgsConstructor; +import me.zhengjie.modules.order.orderDetail.repository.TbOrderDetailRepository; +import me.zhengjie.modules.order.orderDetail.service.TbOrderDetailService; +import me.zhengjie.modules.order.orderDetail.service.dto.TbOrderDetailDto; +import me.zhengjie.modules.order.orderDetail.service.dto.TbOrderDetailQueryCriteria; +import me.zhengjie.modules.order.orderDetail.service.mapstruct.TbOrderDetailMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import me.zhengjie.utils.PageUtil; +import me.zhengjie.utils.QueryHelp; +import java.util.List; +import java.util.Map; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.LinkedHashMap; + +/** +* @website https://eladmin.vip +* @description 服务实现 +* @author lyf +* @date 2024-03-02 +**/ +@Service +@RequiredArgsConstructor +public class TbOrderDetailServiceImpl implements TbOrderDetailService { + + private final TbOrderDetailRepository tbOrderDetailRepository; + private final TbOrderDetailMapper tbOrderDetailMapper; + + @Override + public Map queryAll(TbOrderDetailQueryCriteria criteria, Pageable pageable){ + Page page = tbOrderDetailRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); + return PageUtil.toPage(page.map(tbOrderDetailMapper::toDto)); + } + + @Override + public List queryAll(TbOrderDetailQueryCriteria criteria){ + return tbOrderDetailMapper.toDto(tbOrderDetailRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); + } + + @Override + @Transactional + public TbOrderDetailDto findById(Integer id) { + TbOrderDetail tbOrderDetail = tbOrderDetailRepository.findById(id).orElseGet(TbOrderDetail::new); + ValidationUtil.isNull(tbOrderDetail.getId(),"TbOrderDetail","id",id); + return tbOrderDetailMapper.toDto(tbOrderDetail); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public TbOrderDetailDto create(TbOrderDetail resources) { + return tbOrderDetailMapper.toDto(tbOrderDetailRepository.save(resources)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(TbOrderDetail resources) { + TbOrderDetail tbOrderDetail = tbOrderDetailRepository.findById(resources.getId()).orElseGet(TbOrderDetail::new); + ValidationUtil.isNull( tbOrderDetail.getId(),"TbOrderDetail","id",resources.getId()); + tbOrderDetail.copy(resources); + tbOrderDetailRepository.save(tbOrderDetail); + } + + @Override + public void deleteAll(Integer[] ids) { + for (Integer id : ids) { + tbOrderDetailRepository.deleteById(id); + } + } + + @Override + public void download(List all, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + for (TbOrderDetailDto tbOrderDetail : all) { + Map map = new LinkedHashMap<>(); + map.put(" orderId", tbOrderDetail.getOrderId()); + map.put(" shopId", tbOrderDetail.getShopId()); + map.put(" productId", tbOrderDetail.getProductId()); + map.put(" productSkuId", tbOrderDetail.getProductSkuId()); + map.put(" num", tbOrderDetail.getNum()); + map.put(" productName", tbOrderDetail.getProductName()); + map.put(" productSkuName", tbOrderDetail.getProductSkuName()); + map.put(" productImg", tbOrderDetail.getProductImg()); + map.put(" createTime", tbOrderDetail.getCreateTime()); + map.put(" updateTime", tbOrderDetail.getUpdateTime()); + map.put(" price", tbOrderDetail.getPrice()); + map.put(" priceAmount", tbOrderDetail.getPriceAmount()); + map.put(" status", tbOrderDetail.getStatus()); + map.put("打包费", tbOrderDetail.getPackAmount()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/BotSendOrderMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/mapstruct/TbOrderDetailMapper.java similarity index 71% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/BotSendOrderMapper.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/mapstruct/TbOrderDetailMapper.java index 6806dc70..9ee08b85 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/BotSendOrderMapper.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderDetail/service/mapstruct/TbOrderDetailMapper.java @@ -13,20 +13,20 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service.mapstruct; +package me.zhengjie.modules.order.orderDetail.service.mapstruct; import me.zhengjie.base.BaseMapper; -import me.zhengjie.modules.oder.domain.BotSendOrder; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDto; +import me.zhengjie.modules.order.orderDetail.domain.TbOrderDetail; +import me.zhengjie.modules.order.orderDetail.service.dto.TbOrderDetailDto; import org.mapstruct.Mapper; import org.mapstruct.ReportingPolicy; /** * @website https://eladmin.vip -* @author admin -* @date 2023-10-30 +* @author lyf +* @date 2024-03-02 **/ @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) -public interface BotSendOrderMapper extends BaseMapper { +public interface TbOrderDetailMapper extends BaseMapper { } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/domain/TbOrderInfo.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/domain/TbOrderInfo.java similarity index 56% rename from eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/domain/TbOrderInfo.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/domain/TbOrderInfo.java index 48c7efc7..61d58513 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/domain/TbOrderInfo.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/domain/TbOrderInfo.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.orderInfo.domain; +package me.zhengjie.modules.order.orderInfo.domain; import lombok.Data; import cn.hutool.core.bean.BeanUtil; @@ -28,7 +28,7 @@ import java.io.Serializable; * @website https://eladmin.vip * @description / * @author lyf -* @date 2023-11-22 +* @date 2024-03-02 **/ @Entity @Data @@ -42,120 +42,127 @@ public class TbOrderInfo implements Serializable { private Integer id; @Column(name = "`order_no`") + @ApiModelProperty(value = "订单编号") private String orderNo; @Column(name = "`settlement_amount`") + @ApiModelProperty(value = "商户结算金额") private BigDecimal settlementAmount; @Column(name = "`pack_fee`") + @ApiModelProperty(value = "包装费") private BigDecimal packFee; @Column(name = "`origin_amount`") + @ApiModelProperty(value = "订单原金额") private BigDecimal originAmount; @Column(name = "`product_amount`") + @ApiModelProperty(value = "商品售价") private BigDecimal productAmount; @Column(name = "`amount`") + @ApiModelProperty(value = "最终金额---退单后,金额变动") private BigDecimal amount; @Column(name = "`refund_amount`") + @ApiModelProperty(value = "退单金额") private BigDecimal refundAmount; @Column(name = "`pay_amount`") + @ApiModelProperty(value = "支付金额") private BigDecimal payAmount; @Column(name = "`freight_amount`") + @ApiModelProperty(value = "订单邮递费用") private BigDecimal freightAmount; - @Column(name = "`cash_paid_amount`") - private BigDecimal cashPaidAmount; - - @Column(name = "`wx_paid_amount`") - private BigDecimal wxPaidAmount; - - @Column(name = "`ali_paid_amount`") - private BigDecimal aliPaidAmount; - - @Column(name = "`deposit_paid_amount`") - private BigDecimal depositPaidAmount; - - @Column(name = "`bank_paid_amount`") - private BigDecimal bankPaidAmount; - - @Column(name = "`virtual_paid_amount`") - private BigDecimal virtualPaidAmount; - - @Column(name = "`other_paid_amount`") - private BigDecimal otherPaidAmount; - @Column(name = "`discount_amount`") + @ApiModelProperty(value = "折扣金额") private BigDecimal discountAmount; @Column(name = "`table_id`") + @ApiModelProperty(value = "台桌Id") private String tableId; @Column(name = "`small_change`") + @ApiModelProperty(value = "订单抹零") private BigDecimal smallChange; @Column(name = "`send_type`") + @ApiModelProperty(value = "发货类型") private String sendType; @Column(name = "`order_type`") + @ApiModelProperty(value = "订单类型-cash收银-miniapp小程序-offline线下") private String orderType; @Column(name = "`product_type`") + @ApiModelProperty(value = "订单里面商品的类型") private String productType; @Column(name = "`status`") + @ApiModelProperty(value = "状态: unpaid 待支付unsend待发货 closed 订单完成 send 已发refunding申请退单refund退单cancelled取消订单merge合台") private String status; @Column(name = "`billing_id`") + @ApiModelProperty(value = "orderType为union-minor时,parentId生效,为其上级合单id") private String billingId; @Column(name = "`merchant_id`") + @ApiModelProperty(value = "对于平台订单,是收款商户Id") private String merchantId; @Column(name = "`shop_id`") + @ApiModelProperty(value = "店铺Id") private String shopId; @Column(name = "`is_vip`") + @ApiModelProperty(value = "是否vip订单") private Integer isVip; @Column(name = "`member_id`") + @ApiModelProperty(value = "商户会员Id") private String memberId; @Column(name = "`user_id`") + @ApiModelProperty(value = "用户Id") private String userId; @Column(name = "`product_score`") + @ApiModelProperty(value = "该订单商品赠送的积分") private Integer productScore; @Column(name = "`deduct_score`") + @ApiModelProperty(value = "抵扣积分") private Integer deductScore; @Column(name = "`user_coupon_id`") + @ApiModelProperty(value = "用户使用的卡券") private String userCouponId; @Column(name = "`user_coupon_amount`") + @ApiModelProperty(value = "优惠券抵扣金额") private BigDecimal userCouponAmount; - @Column(name = "`is_master`") - private Integer isMaster; - @Column(name = "`master_id`") + @ApiModelProperty(value = "如果为退单时,主单号") private String masterId; @Column(name = "`refund_able`") + @ApiModelProperty(value = "是否支持退款,1支持退单, 0不支持退单") private Integer refundAble; @Column(name = "`paid_time`") + @ApiModelProperty(value = "支付时间") private Long paidTime; @Column(name = "`is_effect`") + @ApiModelProperty(value = "是否生效,若订单合单之后,则原订单不会生效") private Integer isEffect; @Column(name = "`is_group`") + @ApiModelProperty(value = "是否合台") private Integer isGroup; @Column(name = "`updated_at`") @@ -163,14 +170,45 @@ public class TbOrderInfo implements Serializable { private Long updatedAt; @Column(name = "`system_time`") + @ApiModelProperty(value = "系统时间") private Long systemTime; @Column(name = "`created_at`") + @ApiModelProperty(value = "createdAt") private Long createdAt; @Column(name = "`is_accepted`") + @ApiModelProperty(value = "收银台是否已接单") private Integer isAccepted; + @Column(name = "`pay_type`") + @ApiModelProperty(value = "支付类型") + private String payType; + + @Column(name = "`order_amount`") + @ApiModelProperty(value = "订单金额") + private BigDecimal orderAmount; + + @Column(name = "`discount_ratio`") + @ApiModelProperty(value = "折扣比例") + private BigDecimal discountRatio; + + @Column(name = "`pay_order_no`") + @ApiModelProperty(value = "支付订单号") + private String payOrderNo; + + @Column(name = "`trade_day`") + @ApiModelProperty(value = "tradeDay") + private String tradeDay; + + @Column(name = "`source`") + @ApiModelProperty(value = "source") + private Integer source; + + @Column(name = "`remark`") + @ApiModelProperty(value = "remark") + private String remark; + public void copy(TbOrderInfo source){ BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/repository/TbOrderInfoRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/repository/TbOrderInfoRepository.java similarity index 86% rename from eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/repository/TbOrderInfoRepository.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/repository/TbOrderInfoRepository.java index 77470265..248e41e8 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/repository/TbOrderInfoRepository.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/repository/TbOrderInfoRepository.java @@ -13,16 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.orderInfo.repository; +package me.zhengjie.modules.order.orderInfo.repository; -import me.zhengjie.modules.orderInfo.domain.TbOrderInfo; +import me.zhengjie.modules.order.orderInfo.domain.TbOrderInfo; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; /** * @website https://eladmin.vip * @author lyf -* @date 2023-11-22 +* @date 2024-03-02 **/ public interface TbOrderInfoRepository extends JpaRepository, JpaSpecificationExecutor { } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/rest/TbOrderInfoController.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/rest/TbOrderInfoController.java similarity index 75% rename from eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/rest/TbOrderInfoController.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/rest/TbOrderInfoController.java index 6c69721c..b2897449 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/rest/TbOrderInfoController.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/rest/TbOrderInfoController.java @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.orderInfo.rest; +package me.zhengjie.modules.order.orderInfo.rest; import me.zhengjie.annotation.Log; -import me.zhengjie.modules.orderInfo.domain.TbOrderInfo; -import me.zhengjie.modules.orderInfo.service.TbOrderInfoService; -import me.zhengjie.modules.orderInfo.service.dto.TbOrderInfoQueryCriteria; +import me.zhengjie.modules.order.orderInfo.domain.TbOrderInfo; +import me.zhengjie.modules.order.orderInfo.service.TbOrderInfoService; +import me.zhengjie.modules.order.orderInfo.service.dto.TbOrderInfoQueryCriteria; import org.springframework.data.domain.Pageable; import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; @@ -33,53 +33,48 @@ import javax.servlet.http.HttpServletResponse; /** * @website https://eladmin.vip * @author lyf -* @date 2023-11-22 +* @date 2024-03-02 **/ @RestController @RequiredArgsConstructor -@Api(tags = "/orderInfo") +@Api(tags = "/orderInfo管理") @RequestMapping("/api/tbOrderInfo") public class TbOrderInfoController { private final TbOrderInfoService tbOrderInfoService; - @Log("") - @ApiOperation("") + @Log("导出数据") + @ApiOperation("导出数据") @GetMapping(value = "/download") - @PreAuthorize("@el.check('tbOrderInfo:list')") public void exportTbOrderInfo(HttpServletResponse response, TbOrderInfoQueryCriteria criteria) throws IOException { tbOrderInfoService.download(tbOrderInfoService.queryAll(criteria), response); } @GetMapping - @Log("/orderInfo") - @ApiOperation("/orderInfo") - @PreAuthorize("@el.check('tbOrderInfo:list')") + @Log("查询/orderInfo") + @ApiOperation("查询/orderInfo") public ResponseEntity queryTbOrderInfo(TbOrderInfoQueryCriteria criteria, Pageable pageable){ return new ResponseEntity<>(tbOrderInfoService.queryAll(criteria,pageable),HttpStatus.OK); } @PostMapping - @Log("/orderInfo") - @ApiOperation("/orderInfo") - @PreAuthorize("@el.check('tbOrderInfo:add')") + @Log("新增/orderInfo") + @ApiOperation("新增/orderInfo") public ResponseEntity createTbOrderInfo(@Validated @RequestBody TbOrderInfo resources){ return new ResponseEntity<>(tbOrderInfoService.create(resources),HttpStatus.CREATED); } @PutMapping - @Log("/orderInfo") - @ApiOperation("/orderInfo") - @PreAuthorize("@el.check('tbOrderInfo:edit')") + @Log("修改/orderInfo") + @ApiOperation("修改/orderInfo") public ResponseEntity updateTbOrderInfo(@Validated @RequestBody TbOrderInfo resources){ tbOrderInfoService.update(resources); return new ResponseEntity<>(HttpStatus.NO_CONTENT); } @DeleteMapping - @Log("/orderInfo") - @ApiOperation("/orderInfo") - @PreAuthorize("@el.check('tbOrderInfo:del')") + @Log("删除/orderInfo") + @ApiOperation("删除/orderInfo") public ResponseEntity deleteTbOrderInfo(@RequestBody Integer[] ids) { tbOrderInfoService.deleteAll(ids); return new ResponseEntity<>(HttpStatus.OK); diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/TbOrderInfoService.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/TbOrderInfoService.java similarity index 73% rename from eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/TbOrderInfoService.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/TbOrderInfoService.java index 419eb747..8e40c9d7 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/TbOrderInfoService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/TbOrderInfoService.java @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.orderInfo.service; +package me.zhengjie.modules.order.orderInfo.service; -import me.zhengjie.modules.orderInfo.domain.TbOrderInfo; -import me.zhengjie.modules.orderInfo.service.dto.TbOrderInfoDto; -import me.zhengjie.modules.orderInfo.service.dto.TbOrderInfoQueryCriteria; +import me.zhengjie.modules.order.orderInfo.domain.TbOrderInfo; +import me.zhengjie.modules.order.orderInfo.service.dto.TbOrderInfoDto; +import me.zhengjie.modules.order.orderInfo.service.dto.TbOrderInfoQueryCriteria; import org.springframework.data.domain.Pageable; import java.util.Map; import java.util.List; @@ -26,56 +26,56 @@ import javax.servlet.http.HttpServletResponse; /** * @website https://eladmin.vip -* @description +* @description 服务接口 * @author lyf -* @date 2023-11-22 +* @date 2024-03-02 **/ public interface TbOrderInfoService { /** - * - * @param criteria - * @param pageable + * 查询数据分页 + * @param criteria 条件 + * @param pageable 分页参数 * @return Map */ Map queryAll(TbOrderInfoQueryCriteria criteria, Pageable pageable); /** - * � - * @param criteria + * 查询所有数据不分页 + * @param criteria 条件参数 * @return List */ List queryAll(TbOrderInfoQueryCriteria criteria); /** - * ID��ѯ + * 根据ID查询 * @param id ID * @return TbOrderInfoDto */ TbOrderInfoDto findById(Integer id); /** - * + * 创建 * @param resources / * @return TbOrderInfoDto */ TbOrderInfoDto create(TbOrderInfo resources); /** - * �༭ + * 编辑 * @param resources / */ void update(TbOrderInfo resources); /** - * ��ѡɾ�� + * 多选删除 * @param ids / */ void deleteAll(Integer[] ids); /** - * - * @param all + * 导出数据 + * @param all 待导出的数据 * @param response / * @throws IOException / */ diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/dto/TbOrderInfoDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/dto/TbOrderInfoDto.java similarity index 54% rename from eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/dto/TbOrderInfoDto.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/dto/TbOrderInfoDto.java index de6a8ebe..085a9b0d 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/dto/TbOrderInfoDto.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/dto/TbOrderInfoDto.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.orderInfo.service.dto; +package me.zhengjie.modules.order.orderInfo.service.dto; import lombok.Data; import java.math.BigDecimal; @@ -23,136 +23,131 @@ import java.io.Serializable; * @website https://eladmin.vip * @description / * @author lyf -* @date 2023-11-22 +* @date 2024-03-02 **/ @Data public class TbOrderInfoDto implements Serializable { private Integer id; + /** 订单编号 */ private String orderNo; - /** �̻��� */ + /** 商户结算金额 */ private BigDecimal settlementAmount; - /** ��װ�� */ + /** 包装费 */ private BigDecimal packFee; - /** ԭ��� */ + /** 订单原金额 */ private BigDecimal originAmount; - /** ��Ʒ�ۼ� */ + /** 商品售价 */ private BigDecimal productAmount; - /** ���ս��---�˵��󣬽��䶯 */ + /** 最终金额---退单后,金额变动 */ private BigDecimal amount; - /** �˵ */ + /** 退单金额 */ private BigDecimal refundAmount; - /** ֧� */ + /** 支付金额 */ private BigDecimal payAmount; - /** �ʵݷ��� */ + /** 订单邮递费用 */ private BigDecimal freightAmount; - /** �ֽ�֧� */ - private BigDecimal cashPaidAmount; - - /** ΢��֧� */ - private BigDecimal wxPaidAmount; - - /** ֧֧� */ - private BigDecimal aliPaidAmount; - - /** ��ֵ֧� */ - private BigDecimal depositPaidAmount; - - /** ֧� */ - private BigDecimal bankPaidAmount; - - /** ֧� */ - private BigDecimal virtualPaidAmount; - - /** ֧� */ - private BigDecimal otherPaidAmount; - - /** �ۿ۽�� */ + /** 折扣金额 */ private BigDecimal discountAmount; - /** ̨��Id */ + /** 台桌Id */ private String tableId; - /** Ĩ�� */ + /** 订单抹零 */ private BigDecimal smallChange; - /** */ + /** 发货类型 */ private String sendType; - /** -cash-miniappС-offline */ + /** 订单类型-cash收银-miniapp小程序-offline线下 */ private String orderType; - /** ��Ʒ�� */ + /** 订单里面商品的类型 */ private String productType; - /** ״̬: unpaid ��֧��unsend�� closed ��� send �ѷ�refunding�˵�refund�˵�cancelledȡ��merge��̨ */ + /** 状态: unpaid 待支付unsend待发货 closed 订单完成 send 已发refunding申请退单refund退单cancelled取消订单merge合台 */ private String status; - /** orderTypeΪunion-minorʱ��parentId��Ч��Ϊ���ϼ��ϵ�id */ + /** orderType为union-minor时,parentId生效,为其上级合单id */ private String billingId; - /** ƽ̨,���տ��̻�Id */ + /** 对于平台订单,是收款商户Id */ private String merchantId; - /** Id */ + /** 店铺Id */ private String shopId; - /** �Ƿ�vip */ + /** 是否vip订单 */ private Integer isVip; - /** �̻���ԱId */ + /** 商户会员Id */ private String memberId; - /** �û�Id */ + /** 用户Id */ private String userId; - /** �ö�Ʒ���͵Ļ��� */ + /** 该订单商品赠送的积分 */ private Integer productScore; - /** �ֿۻ��� */ + /** 抵扣积分 */ private Integer deductScore; - /** �û�ʹ�õĿ�ȯ */ + /** 用户使用的卡券 */ private String userCouponId; - /** �Ż�ȯ�ֿ۽�� */ + /** 优惠券抵扣金额 */ private BigDecimal userCouponAmount; - /** �Ƿ� */ - private Integer isMaster; - - /** ���Ϊ�˵�ʱ */ + /** 如果为退单时,主单号 */ private String masterId; - /** �Ƿ�֧���˿1֧���˵��� 0��֧���˵� */ + /** 是否支持退款,1支持退单, 0不支持退单 */ private Integer refundAble; - /** ֧��ʱ�� */ + /** 支付时间 */ private Long paidTime; - /** �Ƿ���Ч�ϵ�֮ԭ��Ч */ + /** 是否生效,若订单合单之后,则原订单不会生效 */ private Integer isEffect; - /** �Ƿ��̨ */ + /** 是否合台 */ private Integer isGroup; private Long updatedAt; - /** ϵͳʱ�� */ + /** 系统时间 */ private Long systemTime; private Long createdAt; - /** ̨�Ƿ��ѽӵ� */ + /** 收银台是否已接单 */ private Integer isAccepted; + + /** 支付类型 */ + private String payType; + + /** 订单金额 */ + private BigDecimal orderAmount; + + /** 折扣比例 */ + private BigDecimal discountRatio; + + /** 支付订单号 */ + private String payOrderNo; + + private String tradeDay; + + private Integer source; + + private String remark; } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/dto/TbOrderInfoQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/dto/TbOrderInfoQueryCriteria.java similarity index 73% rename from eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/dto/TbOrderInfoQueryCriteria.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/dto/TbOrderInfoQueryCriteria.java index 4b933a9a..d8f6cdd0 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/dto/TbOrderInfoQueryCriteria.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/dto/TbOrderInfoQueryCriteria.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.orderInfo.service.dto; +package me.zhengjie.modules.order.orderInfo.service.dto; import lombok.Data; import java.math.BigDecimal; @@ -23,7 +23,7 @@ import me.zhengjie.annotation.Query; /** * @website https://eladmin.vip * @author lyf -* @date 2023-11-22 +* @date 2024-03-02 **/ @Data public class TbOrderInfoQueryCriteria{ @@ -44,34 +44,6 @@ public class TbOrderInfoQueryCriteria{ @Query private BigDecimal payAmount; - /** 精确 */ - @Query - private BigDecimal cashPaidAmount; - - /** 精确 */ - @Query - private BigDecimal wxPaidAmount; - - /** 精确 */ - @Query - private BigDecimal aliPaidAmount; - - /** 精确 */ - @Query - private BigDecimal depositPaidAmount; - - /** 精确 */ - @Query - private BigDecimal bankPaidAmount; - - /** 精确 */ - @Query - private BigDecimal virtualPaidAmount; - - /** 精确 */ - @Query - private BigDecimal otherPaidAmount; - /** 精确 */ @Query private String sendType; diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/impl/TbOrderInfoServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/impl/TbOrderInfoServiceImpl.java new file mode 100644 index 00000000..97c52f7a --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/impl/TbOrderInfoServiceImpl.java @@ -0,0 +1,145 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.order.orderInfo.service.impl; + +import me.zhengjie.modules.order.orderInfo.domain.TbOrderInfo; +import me.zhengjie.utils.ValidationUtil; +import me.zhengjie.utils.FileUtil; +import lombok.RequiredArgsConstructor; +import me.zhengjie.modules.order.orderInfo.repository.TbOrderInfoRepository; +import me.zhengjie.modules.order.orderInfo.service.TbOrderInfoService; +import me.zhengjie.modules.order.orderInfo.service.dto.TbOrderInfoDto; +import me.zhengjie.modules.order.orderInfo.service.dto.TbOrderInfoQueryCriteria; +import me.zhengjie.modules.order.orderInfo.service.mapstruct.TbOrderInfoMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import me.zhengjie.utils.PageUtil; +import me.zhengjie.utils.QueryHelp; +import java.util.List; +import java.util.Map; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.LinkedHashMap; + +/** +* @website https://eladmin.vip +* @description 服务实现 +* @author lyf +* @date 2024-03-02 +**/ +@Service +@RequiredArgsConstructor +public class TbOrderInfoServiceImpl implements TbOrderInfoService { + + private final TbOrderInfoRepository tbOrderInfoRepository; + private final TbOrderInfoMapper tbOrderInfoMapper; + + @Override + public Map queryAll(TbOrderInfoQueryCriteria criteria, Pageable pageable){ + Page page = tbOrderInfoRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); + return PageUtil.toPage(page.map(tbOrderInfoMapper::toDto)); + } + + @Override + public List queryAll(TbOrderInfoQueryCriteria criteria){ + return tbOrderInfoMapper.toDto(tbOrderInfoRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); + } + + @Override + @Transactional + public TbOrderInfoDto findById(Integer id) { + TbOrderInfo tbOrderInfo = tbOrderInfoRepository.findById(id).orElseGet(TbOrderInfo::new); + ValidationUtil.isNull(tbOrderInfo.getId(),"TbOrderInfo","id",id); + return tbOrderInfoMapper.toDto(tbOrderInfo); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public TbOrderInfoDto create(TbOrderInfo resources) { + return tbOrderInfoMapper.toDto(tbOrderInfoRepository.save(resources)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(TbOrderInfo resources) { + TbOrderInfo tbOrderInfo = tbOrderInfoRepository.findById(resources.getId()).orElseGet(TbOrderInfo::new); + ValidationUtil.isNull( tbOrderInfo.getId(),"TbOrderInfo","id",resources.getId()); + tbOrderInfo.copy(resources); + tbOrderInfoRepository.save(tbOrderInfo); + } + + @Override + public void deleteAll(Integer[] ids) { + for (Integer id : ids) { + tbOrderInfoRepository.deleteById(id); + } + } + + @Override + public void download(List all, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + for (TbOrderInfoDto tbOrderInfo : all) { + Map map = new LinkedHashMap<>(); + map.put("订单编号", tbOrderInfo.getOrderNo()); + map.put("商户结算金额", tbOrderInfo.getSettlementAmount()); + map.put("包装费", tbOrderInfo.getPackFee()); + map.put("订单原金额", tbOrderInfo.getOriginAmount()); + map.put("商品售价", tbOrderInfo.getProductAmount()); + map.put("最终金额---退单后,金额变动", tbOrderInfo.getAmount()); + map.put("退单金额", tbOrderInfo.getRefundAmount()); + map.put("支付金额", tbOrderInfo.getPayAmount()); + map.put("订单邮递费用", tbOrderInfo.getFreightAmount()); + map.put("折扣金额", tbOrderInfo.getDiscountAmount()); + map.put("台桌Id", tbOrderInfo.getTableId()); + map.put("订单抹零", tbOrderInfo.getSmallChange()); + map.put("发货类型", tbOrderInfo.getSendType()); + map.put("订单类型-cash收银-miniapp小程序-offline线下", tbOrderInfo.getOrderType()); + map.put("订单里面商品的类型", tbOrderInfo.getProductType()); + map.put("状态: unpaid 待支付unsend待发货 closed 订单完成 send 已发refunding申请退单refund退单cancelled取消订单merge合台", tbOrderInfo.getStatus()); + map.put("orderType为union-minor时,parentId生效,为其上级合单id", tbOrderInfo.getBillingId()); + map.put("对于平台订单,是收款商户Id", tbOrderInfo.getMerchantId()); + map.put("店铺Id", tbOrderInfo.getShopId()); + map.put("是否vip订单", tbOrderInfo.getIsVip()); + map.put("商户会员Id", tbOrderInfo.getMemberId()); + map.put("用户Id", tbOrderInfo.getUserId()); + map.put("该订单商品赠送的积分", tbOrderInfo.getProductScore()); + map.put("抵扣积分", tbOrderInfo.getDeductScore()); + map.put("用户使用的卡券", tbOrderInfo.getUserCouponId()); + map.put("优惠券抵扣金额", tbOrderInfo.getUserCouponAmount()); + map.put("如果为退单时,主单号", tbOrderInfo.getMasterId()); + map.put("是否支持退款,1支持退单, 0不支持退单", tbOrderInfo.getRefundAble()); + map.put("支付时间", tbOrderInfo.getPaidTime()); + map.put("是否生效,若订单合单之后,则原订单不会生效", tbOrderInfo.getIsEffect()); + map.put("是否合台", tbOrderInfo.getIsGroup()); + map.put(" updatedAt", tbOrderInfo.getUpdatedAt()); + map.put("系统时间", tbOrderInfo.getSystemTime()); + map.put(" createdAt", tbOrderInfo.getCreatedAt()); + map.put("收银台是否已接单", tbOrderInfo.getIsAccepted()); + map.put("支付类型", tbOrderInfo.getPayType()); + map.put("订单金额", tbOrderInfo.getOrderAmount()); + map.put("折扣比例", tbOrderInfo.getDiscountRatio()); + map.put("支付订单号", tbOrderInfo.getPayOrderNo()); + map.put(" tradeDay", tbOrderInfo.getTradeDay()); + map.put(" source", tbOrderInfo.getSource()); + map.put(" remark", tbOrderInfo.getRemark()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/mapstruct/TbOrderInfoMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/mapstruct/TbOrderInfoMapper.java similarity index 80% rename from eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/mapstruct/TbOrderInfoMapper.java rename to eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/mapstruct/TbOrderInfoMapper.java index 3e22c079..a7d3a451 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/mapstruct/TbOrderInfoMapper.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/order/orderInfo/service/mapstruct/TbOrderInfoMapper.java @@ -13,18 +13,18 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.orderInfo.service.mapstruct; +package me.zhengjie.modules.order.orderInfo.service.mapstruct; import me.zhengjie.base.BaseMapper; -import me.zhengjie.modules.orderInfo.domain.TbOrderInfo; -import me.zhengjie.modules.orderInfo.service.dto.TbOrderInfoDto; +import me.zhengjie.modules.order.orderInfo.domain.TbOrderInfo; +import me.zhengjie.modules.order.orderInfo.service.dto.TbOrderInfoDto; import org.mapstruct.Mapper; import org.mapstruct.ReportingPolicy; /** * @website https://eladmin.vip * @author lyf -* @date 2023-11-22 +* @date 2024-03-02 **/ @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) public interface TbOrderInfoMapper extends BaseMapper { diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/impl/TbOrderInfoServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/impl/TbOrderInfoServiceImpl.java deleted file mode 100644 index 124a817e..00000000 --- a/eladmin-system/src/main/java/me/zhengjie/modules/orderInfo/service/impl/TbOrderInfoServiceImpl.java +++ /dev/null @@ -1,146 +0,0 @@ -/* -* Copyright 2019-2020 Zheng Jie -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -package me.zhengjie.modules.orderInfo.service.impl; - -import me.zhengjie.modules.orderInfo.domain.TbOrderInfo; -import me.zhengjie.utils.ValidationUtil; -import me.zhengjie.utils.FileUtil; -import lombok.RequiredArgsConstructor; -import me.zhengjie.modules.orderInfo.repository.TbOrderInfoRepository; -import me.zhengjie.modules.orderInfo.service.TbOrderInfoService; -import me.zhengjie.modules.orderInfo.service.dto.TbOrderInfoDto; -import me.zhengjie.modules.orderInfo.service.dto.TbOrderInfoQueryCriteria; -import me.zhengjie.modules.orderInfo.service.mapstruct.TbOrderInfoMapper; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; -import me.zhengjie.utils.PageUtil; -import me.zhengjie.utils.QueryHelp; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.LinkedHashMap; - -/** -* @website https://eladmin.vip -* @description -* @author lyf -* @date 2023-11-22 -**/ -@Service -@RequiredArgsConstructor -public class TbOrderInfoServiceImpl implements TbOrderInfoService { - - private final TbOrderInfoRepository tbOrderInfoRepository; - private final TbOrderInfoMapper tbOrderInfoMapper; - - @Override - public Map queryAll(TbOrderInfoQueryCriteria criteria, Pageable pageable){ - Page page = tbOrderInfoRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); - return PageUtil.toPage(page.map(tbOrderInfoMapper::toDto)); - } - - @Override - public List queryAll(TbOrderInfoQueryCriteria criteria){ - return tbOrderInfoMapper.toDto(tbOrderInfoRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); - } - - @Override - @Transactional - public TbOrderInfoDto findById(Integer id) { - TbOrderInfo tbOrderInfo = tbOrderInfoRepository.findById(id).orElseGet(TbOrderInfo::new); - ValidationUtil.isNull(tbOrderInfo.getId(),"TbOrderInfo","id",id); - return tbOrderInfoMapper.toDto(tbOrderInfo); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public TbOrderInfoDto create(TbOrderInfo resources) { - return tbOrderInfoMapper.toDto(tbOrderInfoRepository.save(resources)); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(TbOrderInfo resources) { - TbOrderInfo tbOrderInfo = tbOrderInfoRepository.findById(resources.getId()).orElseGet(TbOrderInfo::new); - ValidationUtil.isNull( tbOrderInfo.getId(),"TbOrderInfo","id",resources.getId()); - tbOrderInfo.copy(resources); - tbOrderInfoRepository.save(tbOrderInfo); - } - - @Override - public void deleteAll(Integer[] ids) { - for (Integer id : ids) { - tbOrderInfoRepository.deleteById(id); - } - } - - @Override - public void download(List all, HttpServletResponse response) throws IOException { -// List> list = new ArrayList<>(); -// for (TbOrderInfoDto tbOrderInfo : all) { -// Map map = new LinkedHashMap<>(); -// map.put("���", tbOrderInfo.getOrderNo()); -// map.put("�̻���", tbOrderInfo.getSettlementAmount()); -// map.put("��װ��", tbOrderInfo.getPackFee()); -// map.put("ԭ���", tbOrderInfo.getOriginAmount()); -// map.put("��Ʒ�ۼ�", tbOrderInfo.getProductAmount()); -// map.put("���ս��---�˵��󣬽��䶯", tbOrderInfo.getAmount()); -// map.put("�˵����", tbOrderInfo.getRefundAmount()); -// map.put("֧�����", tbOrderInfo.getPayAmount()); -// map.put("�����ʵݷ���", tbOrderInfo.getFreightAmount()); -// map.put("�ֽ�֧�����", tbOrderInfo.getCashPaidAmount()); -// map.put("΢��֧�����", tbOrderInfo.getWxPaidAmount()); -// map.put("֧����֧�����", tbOrderInfo.getAliPaidAmount()); -// map.put("��ֵ֧�����", tbOrderInfo.getDepositPaidAmount()); -// map.put("����֧�����", tbOrderInfo.getBankPaidAmount()); -// map.put("����֧�����", tbOrderInfo.getVirtualPaidAmount()); -// map.put("����֧�����", tbOrderInfo.getOtherPaidAmount()); -// map.put("�ۿ۽��", tbOrderInfo.getDiscountAmount()); -// map.put("̨��Id", tbOrderInfo.getTableId()); -// map.put("����Ĩ��", tbOrderInfo.getSmallChange()); -// map.put("��������", tbOrderInfo.getSendType()); -// map.put("��������-cash����-miniappС����-offline����", tbOrderInfo.getOrderType()); -// map.put("����������Ʒ������", tbOrderInfo.getProductType()); -// map.put("״̬: unpaid ��֧��unsend������ closed ������� send �ѷ�refunding�����˵�refund�˵�cancelledȡ������merge��̨", tbOrderInfo.getStatus()); -// map.put("orderTypeΪunion-minorʱ��parentId��Ч��Ϊ���ϼ��ϵ�id", tbOrderInfo.getBillingId()); -// map.put("����ƽ̨����,���տ��̻�Id", tbOrderInfo.getMerchantId()); -// map.put("����Id", tbOrderInfo.getShopId()); -// map.put("�Ƿ�vip����", tbOrderInfo.getIsVip()); -// map.put("�̻���ԱId", tbOrderInfo.getMemberId()); -// map.put("�û�Id", tbOrderInfo.getUserId()); -// map.put("�ö�����Ʒ���͵Ļ���", tbOrderInfo.getProductScore()); -// map.put("�ֿۻ���", tbOrderInfo.getDeductScore()); -// map.put("�û�ʹ�õĿ�ȯ", tbOrderInfo.getUserCouponId()); -// map.put("�Ż�ȯ�ֿ۽��", tbOrderInfo.getUserCouponAmount()); -// map.put("�Ƿ�����", tbOrderInfo.getIsMaster()); -// map.put("���Ϊ�˵�ʱ��������", tbOrderInfo.getMasterId()); -// map.put("�Ƿ�֧���˿1֧���˵��� 0��֧���˵�", tbOrderInfo.getRefundAble()); -// map.put("֧��ʱ��", tbOrderInfo.getPaidTime()); -// map.put("�Ƿ���Ч���������ϵ�֮����ԭ����������Ч", tbOrderInfo.getIsEffect()); -// map.put("�Ƿ��̨", tbOrderInfo.getIsGroup()); -// map.put(" updatedAt", tbOrderInfo.getUpdatedAt()); -// map.put("ϵͳʱ��", tbOrderInfo.getSystemTime()); -// map.put(" createdAt", tbOrderInfo.getCreatedAt()); -// map.put("����̨�Ƿ��ѽӵ�", tbOrderInfo.getIsAccepted()); -// list.add(map); -// } - FileUtil.downloadExcel(new ArrayList<>(), response); - } -} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/payType/domain/TbShopPayType.java b/eladmin-system/src/main/java/me/zhengjie/modules/payType/domain/TbShopPayType.java index 18ece752..0b28ceed 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/payType/domain/TbShopPayType.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/payType/domain/TbShopPayType.java @@ -87,6 +87,10 @@ public class TbShopPayType implements Serializable { @ApiModelProperty(value = "排序") private Integer sorts; + @Column(name = "icon") + @ApiModelProperty(value = "图标") + private String icon; + public void copy(TbShopPayType source){ BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/dto/TbShopPayTypeDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/dto/TbShopPayTypeDto.java index 1501efa4..c005f619 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/dto/TbShopPayTypeDto.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/dto/TbShopPayTypeDto.java @@ -63,4 +63,8 @@ public class TbShopPayTypeDto implements Serializable { /** 排序 */ private Integer sorts; + /** + * 图标 + */ + private String icon; } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/impl/TbShopPayTypeServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/impl/TbShopPayTypeServiceImpl.java index 688f8b56..fd648807 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/impl/TbShopPayTypeServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/payType/service/impl/TbShopPayTypeServiceImpl.java @@ -57,7 +57,7 @@ public class TbShopPayTypeServiceImpl implements TbShopPayTypeService { @Override public Map queryAll(TbShopPayTypeQueryCriteria criteria, Pageable pageable){ Page page = tbShopPayTypeRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); - return PageUtil.toPage(page.map(tbShopPayTypeMapper::toDto)); + return PageUtil.toPage(page.getContent(),page.getTotalElements()); } @Override @@ -79,6 +79,9 @@ public class TbShopPayTypeServiceImpl implements TbShopPayTypeService { if (resources.getPayName() == null || "".equals(resources.getPayName())){ throw new BadRequestException("付款方式不能为空"); } + if (resources.getIcon() == null || "".equals(resources.getIcon())){ + throw new BadRequestException("支付方式图标不能为空"); + } //类型转换 String nameByType = PayTypeEnum.getNameByType(resources.getPayName()); resources.setPayType(nameByType); diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/domain/TbPlussShopStaff.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/domain/TbPlussShopStaff.java new file mode 100644 index 00000000..cb8f92cd --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/domain/TbPlussShopStaff.java @@ -0,0 +1,87 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopStaff.domain; + +import lombok.Data; +import cn.hutool.core.bean.BeanUtil; +import io.swagger.annotations.ApiModelProperty; +import cn.hutool.core.bean.copier.CopyOptions; +import javax.persistence.*; +import javax.validation.constraints.*; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-01 +**/ +@Entity +@Data +@Table(name="tb_pluss_shop_staff") +public class TbPlussShopStaff implements Serializable { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "`id`") + @ApiModelProperty(value = "自增") + private Integer id; + + @Column(name = "`code`") + @ApiModelProperty(value = "员工编号") + private String code; + + @Column(name = "`name`") + @ApiModelProperty(value = "员工名称") + private String name; + + @Column(name = "`account`") + @ApiModelProperty(value = "登录账号") + private String account; + + @Column(name = "`password`") + @ApiModelProperty(value = "密码") + private String password; + + @Column(name = "`max_discount_amount`") + @ApiModelProperty(value = "最大优惠金额") + private BigDecimal maxDiscountAmount; + + @Column(name = "`status`") + @ApiModelProperty(value = "1启用0不启用") + private Integer status; + + @Column(name = "`employee`") + @ApiModelProperty(value = "登录端") + private String employee; + + @Column(name = "`shop_id`") + @ApiModelProperty(value = "shopId") + private String shopId; + + @Column(name = "`created_at`") + @ApiModelProperty(value = "createdAt") + private Long createdAt; + + @Column(name = "`updated_at`") + @ApiModelProperty(value = "updatedAt") + private Long updatedAt; + + public void copy(TbPlussShopStaff source){ + BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/repository/TbPlussShopStaffRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/repository/TbPlussShopStaffRepository.java new file mode 100644 index 00000000..5946e718 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/repository/TbPlussShopStaffRepository.java @@ -0,0 +1,28 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopStaff.repository; + +import me.zhengjie.modules.shopInfo.shopStaff.domain.TbPlussShopStaff; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.JpaSpecificationExecutor; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-01 +**/ +public interface TbPlussShopStaffRepository extends JpaRepository, JpaSpecificationExecutor { +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/rest/TbPlussShopStaffController.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/rest/TbPlussShopStaffController.java new file mode 100644 index 00000000..9076aff9 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/rest/TbPlussShopStaffController.java @@ -0,0 +1,82 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopStaff.rest; + +import me.zhengjie.annotation.Log; +import me.zhengjie.modules.shopInfo.shopStaff.domain.TbPlussShopStaff; +import me.zhengjie.modules.shopInfo.shopStaff.service.TbPlussShopStaffService; +import me.zhengjie.modules.shopInfo.shopStaff.service.dto.TbPlussShopStaffQueryCriteria; +import org.springframework.data.domain.Pageable; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.*; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-01 +**/ +@RestController +@RequiredArgsConstructor +@Api(tags = "/shop/shopStaff管理") +@RequestMapping("/api/tbPlussShopStaff") +public class TbPlussShopStaffController { + + private final TbPlussShopStaffService tbPlussShopStaffService; + + @Log("导出数据") + @ApiOperation("导出数据") + @GetMapping(value = "/download") + public void exportTbPlussShopStaff(HttpServletResponse response, TbPlussShopStaffQueryCriteria criteria) throws IOException { + tbPlussShopStaffService.download(tbPlussShopStaffService.queryAll(criteria), response); + } + + @GetMapping + @Log("查询/shop/shopStaff") + @ApiOperation("查询/shop/shopStaff") + public ResponseEntity queryTbPlussShopStaff(TbPlussShopStaffQueryCriteria criteria, Pageable pageable){ + return new ResponseEntity<>(tbPlussShopStaffService.queryAll(criteria,pageable),HttpStatus.OK); + } + + @PostMapping + @Log("新增/shop/shopStaff") + @ApiOperation("新增/shop/shopStaff") + public ResponseEntity createTbPlussShopStaff(@Validated @RequestBody TbPlussShopStaff resources){ + return new ResponseEntity<>(tbPlussShopStaffService.create(resources),HttpStatus.CREATED); + } + + @PutMapping + @Log("修改/shop/shopStaff") + @ApiOperation("修改/shop/shopStaff") + public ResponseEntity updateTbPlussShopStaff(@Validated @RequestBody TbPlussShopStaff resources){ + tbPlussShopStaffService.update(resources); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @DeleteMapping + @Log("删除/shop/shopStaff") + @ApiOperation("删除/shop/shopStaff") + public ResponseEntity deleteTbPlussShopStaff(@RequestBody Integer[] ids) { + tbPlussShopStaffService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/TbPlussShopStaffService.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/TbPlussShopStaffService.java new file mode 100644 index 00000000..e91c66c9 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/TbPlussShopStaffService.java @@ -0,0 +1,83 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopStaff.service; + +import me.zhengjie.modules.shopInfo.shopStaff.domain.TbPlussShopStaff; +import me.zhengjie.modules.shopInfo.shopStaff.service.dto.TbPlussShopStaffDto; +import me.zhengjie.modules.shopInfo.shopStaff.service.dto.TbPlussShopStaffQueryCriteria; +import org.springframework.data.domain.Pageable; +import java.util.Map; +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; + +/** +* @website https://eladmin.vip +* @description 服务接口 +* @author lyf +* @date 2024-03-01 +**/ +public interface TbPlussShopStaffService { + + /** + * 查询数据分页 + * @param criteria 条件 + * @param pageable 分页参数 + * @return Map + */ + Map queryAll(TbPlussShopStaffQueryCriteria criteria, Pageable pageable); + + /** + * 查询所有数据不分页 + * @param criteria 条件参数 + * @return List + */ + List queryAll(TbPlussShopStaffQueryCriteria criteria); + + /** + * 根据ID查询 + * @param id ID + * @return TbPlussShopStaffDto + */ + TbPlussShopStaffDto findById(Integer id); + + /** + * 创建 + * @param resources / + * @return TbPlussShopStaffDto + */ + TbPlussShopStaffDto create(TbPlussShopStaff resources); + + /** + * 编辑 + * @param resources / + */ + void update(TbPlussShopStaff resources); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Integer[] ids); + + /** + * 导出数据 + * @param all 待导出的数据 + * @param response / + * @throws IOException / + */ + void download(List all, HttpServletResponse response) throws IOException; +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/dto/TbPlussShopStaffDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/dto/TbPlussShopStaffDto.java new file mode 100644 index 00000000..037901e3 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/dto/TbPlussShopStaffDto.java @@ -0,0 +1,64 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopStaff.service.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.persistence.Column; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-01 +**/ +@Data +public class TbPlussShopStaffDto implements Serializable { + + /** 自增 */ + private Integer id; + + /** 员工编号 */ + private String code; + + /** 员工名称 */ + private String name; + + /** 登录账号 */ + private String account; + + /** 密码 */ + private String password; + + /** 最大优惠金额 */ + private BigDecimal maxDiscountAmount; + + /** 1启用0不启用 */ + private Integer status; + + /** 登录端 */ + private String employee; + + /** shopId */ + private String shopId; + + private Long createdAt; + + private Long updatedAt; +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/ViewBoxOrderQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/dto/TbPlussShopStaffQueryCriteria.java similarity index 68% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/ViewBoxOrderQueryCriteria.java rename to eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/dto/TbPlussShopStaffQueryCriteria.java index 7d64a3f8..a0f4fb3a 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/ViewBoxOrderQueryCriteria.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/dto/TbPlussShopStaffQueryCriteria.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service.dto; +package me.zhengjie.modules.shopInfo.shopStaff.service.dto; import lombok.Data; import java.util.List; @@ -21,25 +21,13 @@ import me.zhengjie.annotation.Query; /** * @website https://eladmin.vip -* @author admin -* @date 2023-06-23 +* @author lyf +* @date 2024-03-01 **/ @Data -public class ViewBoxOrderQueryCriteria{ +public class TbPlussShopStaffQueryCriteria{ /** 精确 */ @Query - private String payCoinName; - - /** 精确 */ - @Query - private String toAddress; - - /** 精确 */ - @Query - private String confirmStatus; - - /** 精确 */ - @Query - private String address; + private String shopId; } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/impl/TbPlussShopStaffServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/impl/TbPlussShopStaffServiceImpl.java new file mode 100644 index 00000000..6501b214 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/impl/TbPlussShopStaffServiceImpl.java @@ -0,0 +1,113 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopStaff.service.impl; + +import me.zhengjie.modules.shopInfo.shopStaff.domain.TbPlussShopStaff; +import me.zhengjie.utils.*; +import lombok.RequiredArgsConstructor; +import me.zhengjie.modules.shopInfo.shopStaff.repository.TbPlussShopStaffRepository; +import me.zhengjie.modules.shopInfo.shopStaff.service.TbPlussShopStaffService; +import me.zhengjie.modules.shopInfo.shopStaff.service.dto.TbPlussShopStaffDto; +import me.zhengjie.modules.shopInfo.shopStaff.service.dto.TbPlussShopStaffQueryCriteria; +import me.zhengjie.modules.shopInfo.shopStaff.service.mapstruct.TbPlussShopStaffMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; + +import java.time.Instant; +import java.util.List; +import java.util.Map; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.LinkedHashMap; + +/** +* @website https://eladmin.vip +* @description 服务实现 +* @author lyf +* @date 2024-03-01 +**/ +@Service +@RequiredArgsConstructor +public class TbPlussShopStaffServiceImpl implements TbPlussShopStaffService { + + private final TbPlussShopStaffRepository tbPlussShopStaffRepository; + private final TbPlussShopStaffMapper tbPlussShopStaffMapper; + + @Override + public Map queryAll(TbPlussShopStaffQueryCriteria criteria, Pageable pageable){ + Page page = tbPlussShopStaffRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); + return PageUtil.toPage(page.map(tbPlussShopStaffMapper::toDto)); + } + + @Override + public List queryAll(TbPlussShopStaffQueryCriteria criteria){ + return tbPlussShopStaffMapper.toDto(tbPlussShopStaffRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); + } + + @Override + @Transactional + public TbPlussShopStaffDto findById(Integer id) { + TbPlussShopStaff tbPlussShopStaff = tbPlussShopStaffRepository.findById(id).orElseGet(TbPlussShopStaff::new); + ValidationUtil.isNull(tbPlussShopStaff.getId(),"TbPlussShopStaff","id",id); + return tbPlussShopStaffMapper.toDto(tbPlussShopStaff); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public TbPlussShopStaffDto create(TbPlussShopStaff resources) { + resources.setPassword(MD5Utils.md5("123456")); + resources.setCreatedAt(Instant.now().toEpochMilli()); + resources.setUpdatedAt(Instant.now().toEpochMilli()); + return tbPlussShopStaffMapper.toDto(tbPlussShopStaffRepository.save(resources)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(TbPlussShopStaff resources) { + TbPlussShopStaff tbPlussShopStaff = tbPlussShopStaffRepository.findById(resources.getId()).orElseGet(TbPlussShopStaff::new); + ValidationUtil.isNull( tbPlussShopStaff.getId(),"TbPlussShopStaff","id",resources.getId()); + tbPlussShopStaff.copy(resources); + tbPlussShopStaffRepository.save(tbPlussShopStaff); + } + + @Override + public void deleteAll(Integer[] ids) { + for (Integer id : ids) { + tbPlussShopStaffRepository.deleteById(id); + } + } + + @Override + public void download(List all, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + for (TbPlussShopStaffDto tbPlussShopStaff : all) { + Map map = new LinkedHashMap<>(); + map.put("员工编号", tbPlussShopStaff.getCode()); + map.put("员工名称", tbPlussShopStaff.getName()); + map.put("登录账号", tbPlussShopStaff.getAccount()); + map.put("密码", tbPlussShopStaff.getPassword()); + map.put("最大优惠金额", tbPlussShopStaff.getMaxDiscountAmount()); + map.put("1启用0不启用", tbPlussShopStaff.getStatus()); + map.put("登录端", tbPlussShopStaff.getEmployee()); + map.put("shopId", tbPlussShopStaff.getShopId()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/mapstruct/TbPlussShopStaffMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/mapstruct/TbPlussShopStaffMapper.java new file mode 100644 index 00000000..054b0e79 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopStaff/service/mapstruct/TbPlussShopStaffMapper.java @@ -0,0 +1,32 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopStaff.service.mapstruct; + +import me.zhengjie.base.BaseMapper; +import me.zhengjie.modules.shopInfo.shopStaff.domain.TbPlussShopStaff; +import me.zhengjie.modules.shopInfo.shopStaff.service.dto.TbPlussShopStaffDto; +import org.mapstruct.Mapper; +import org.mapstruct.ReportingPolicy; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-01 +**/ +@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) +public interface TbPlussShopStaffMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/domain/TbShopUser.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/domain/TbShopUser.java new file mode 100644 index 00000000..0dfe8fbe --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/domain/TbShopUser.java @@ -0,0 +1,157 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopUser.domain; + +import lombok.Data; +import cn.hutool.core.bean.BeanUtil; +import io.swagger.annotations.ApiModelProperty; +import cn.hutool.core.bean.copier.CopyOptions; +import javax.persistence.*; +import javax.validation.constraints.*; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-01 +**/ +@Entity +@Data +@Table(name="tb_shop_user") +public class TbShopUser implements Serializable { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "`id`") + @ApiModelProperty(value = "(随机)") + private Integer id; + + @Column(name = "`amount`") + @ApiModelProperty(value = "钱包余额") + private BigDecimal amount; + + @Column(name = "`credit_amount`") + @ApiModelProperty(value = "授权金额") + private BigDecimal creditAmount; + + @Column(name = "`consume_amount`") + @ApiModelProperty(value = "消费累计") + private BigDecimal consumeAmount; + + @Column(name = "`consume_number`") + @ApiModelProperty(value = "消费数量累计") + private Integer consumeNumber; + + @Column(name = "`level_consume`",nullable = false) + @NotNull + @ApiModelProperty(value = "等级积分") + private BigDecimal levelConsume; + + @Column(name = "`status`") + @ApiModelProperty(value = "0-不可使用 1可使用") + private Integer status; + + @Column(name = "`merchant_id`") + @ApiModelProperty(value = "代理Id") + private String merchantId; + + @Column(name = "`shop_id`",nullable = false) + @NotBlank + @ApiModelProperty(value = "店铺Id") + private String shopId; + + @Column(name = "`user_id`") + @ApiModelProperty(value = "用户Id") + private String userId; + + @Column(name = "`parent_id`") + @ApiModelProperty(value = "上级Id") + private String parentId; + + @Column(name = "`parent_level`") + @ApiModelProperty(value = "上级的层级") + private String parentLevel; + + @Column(name = "`name`") + @ApiModelProperty(value = "真实名字") + private String name; + + @Column(name = "`head_img`") + @ApiModelProperty(value = "headImg") + private String headImg; + + @Column(name = "`sex`") + @ApiModelProperty(value = "性别") + private Integer sex; + + @Column(name = "`birth_day`") + @ApiModelProperty(value = "生日") + private String birthDay; + + @Column(name = "`telephone`") + @ApiModelProperty(value = "联系电话") + private String telephone; + + @Column(name = "`is_vip`") + @ApiModelProperty(value = "是否会员,") + private Integer isVip; + + @Column(name = "`code`") + @ApiModelProperty(value = "会员编号") + private String code; + + @Column(name = "`is_attention`") + @ApiModelProperty(value = "是否通过关注而成为会员的,此字段固定后不改") + private Integer isAttention; + + @Column(name = "`attention_at`") + @ApiModelProperty(value = "关注时间") + private Integer attentionAt; + + @Column(name = "`is_shareholder`") + @ApiModelProperty(value = "是否股东(分销商)") + private Integer isShareholder; + + @Column(name = "`level`") + @ApiModelProperty(value = "层级1-顶级 2-次级 3最低") + private Integer level; + + @Column(name = "`distribute_type`") + @ApiModelProperty(value = "分销类型 auto-自动获取 set手动设置 charge充值") + private String distributeType; + + @Column(name = "`sort`") + @ApiModelProperty(value = "排序") + private Integer sort; + + @Column(name = "`created_at`") + @ApiModelProperty(value = "createdAt") + private Long createdAt; + + @Column(name = "`updated_at`") + @ApiModelProperty(value = "updatedAt") + private Long updatedAt; + + @Column(name = "`mini_open_id`") + @ApiModelProperty(value = "小程序openId") + private String miniOpenId; + + public void copy(TbShopUser source){ + BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); + } +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/BotSendOrderRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/repository/TbShopUserRepository.java similarity index 73% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/BotSendOrderRepository.java rename to eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/repository/TbShopUserRepository.java index be731846..43d719dc 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/repository/BotSendOrderRepository.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/repository/TbShopUserRepository.java @@ -13,16 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.repository; +package me.zhengjie.modules.shopInfo.shopUser.repository; -import me.zhengjie.modules.oder.domain.BotSendOrder; +import me.zhengjie.modules.shopInfo.shopUser.domain.TbShopUser; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; /** * @website https://eladmin.vip -* @author admin -* @date 2023-10-30 +* @author lyf +* @date 2024-03-01 **/ -public interface BotSendOrderRepository extends JpaRepository, JpaSpecificationExecutor { +public interface TbShopUserRepository extends JpaRepository, JpaSpecificationExecutor { } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/rest/TbShopUserController.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/rest/TbShopUserController.java new file mode 100644 index 00000000..aed4e840 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/rest/TbShopUserController.java @@ -0,0 +1,87 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopUser.rest; + +import me.zhengjie.annotation.Log; +import me.zhengjie.modules.shopInfo.shopUser.domain.TbShopUser; +import me.zhengjie.modules.shopInfo.shopUser.service.TbShopUserService; +import me.zhengjie.modules.shopInfo.shopUser.service.dto.TbShopUserQueryCriteria; +import org.springframework.data.domain.Pageable; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.*; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; + +/** +* @website https://eladmin.vip +* @author lyf +* @date 2024-03-01 +**/ +@RestController +@RequiredArgsConstructor +@Api(tags = "/shop/user管理") +@RequestMapping("/api/tbShopUser") +public class TbShopUserController { + + private final TbShopUserService tbShopUserService; + + @Log("导出数据") + @ApiOperation("导出数据") + @GetMapping(value = "/download") + @PreAuthorize("@el.check('tbShopUser:list')") + public void exportTbShopUser(HttpServletResponse response, TbShopUserQueryCriteria criteria) throws IOException { + tbShopUserService.download(tbShopUserService.queryAll(criteria), response); + } + + @GetMapping + @Log("查询/shop/user") + @ApiOperation("查询/shop/user") + @PreAuthorize("@el.check('tbShopUser:list')") + public ResponseEntity queryTbShopUser(TbShopUserQueryCriteria criteria, Pageable pageable){ + return new ResponseEntity<>(tbShopUserService.queryAll(criteria,pageable),HttpStatus.OK); + } + + @PostMapping + @Log("新增/shop/user") + @ApiOperation("新增/shop/user") + @PreAuthorize("@el.check('tbShopUser:add')") + public ResponseEntity createTbShopUser(@Validated @RequestBody TbShopUser resources){ + return new ResponseEntity<>(tbShopUserService.create(resources),HttpStatus.CREATED); + } + + @PutMapping + @Log("修改/shop/user") + @ApiOperation("修改/shop/user") + @PreAuthorize("@el.check('tbShopUser:edit')") + public ResponseEntity updateTbShopUser(@Validated @RequestBody TbShopUser resources){ + tbShopUserService.update(resources); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @DeleteMapping + @Log("删除/shop/user") + @ApiOperation("删除/shop/user") + @PreAuthorize("@el.check('tbShopUser:del')") + public ResponseEntity deleteTbShopUser(@RequestBody Integer[] ids) { + tbShopUserService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/BotSendOrderService.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/TbShopUserService.java similarity index 63% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/BotSendOrderService.java rename to eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/TbShopUserService.java index 0f58475d..58d0c2f3 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/BotSendOrderService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/TbShopUserService.java @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service; +package me.zhengjie.modules.shopInfo.shopUser.service; -import me.zhengjie.modules.oder.domain.BotSendOrder; -import me.zhengjie.modules.oder.service.dto.BotSendOrderDto; -import me.zhengjie.modules.oder.service.dto.BotSendOrderQueryCriteria; +import me.zhengjie.modules.shopInfo.shopUser.domain.TbShopUser; +import me.zhengjie.modules.shopInfo.shopUser.service.dto.TbShopUserDto; +import me.zhengjie.modules.shopInfo.shopUser.service.dto.TbShopUserQueryCriteria; import org.springframework.data.domain.Pageable; import java.util.Map; import java.util.List; @@ -27,10 +27,10 @@ import javax.servlet.http.HttpServletResponse; /** * @website https://eladmin.vip * @description 服务接口 -* @author admin -* @date 2023-10-30 +* @author lyf +* @date 2024-03-01 **/ -public interface BotSendOrderService { +public interface TbShopUserService { /** * 查询数据分页 @@ -38,34 +38,34 @@ public interface BotSendOrderService { * @param pageable 分页参数 * @return Map */ - Map queryAll(BotSendOrderQueryCriteria criteria, Pageable pageable); + Map queryAll(TbShopUserQueryCriteria criteria, Pageable pageable); /** * 查询所有数据不分页 * @param criteria 条件参数 - * @return List + * @return List */ - List queryAll(BotSendOrderQueryCriteria criteria); + List queryAll(TbShopUserQueryCriteria criteria); /** * 根据ID查询 * @param id ID - * @return BotSendOrderDto + * @return TbShopUserDto */ - BotSendOrderDto findById(Integer id); + TbShopUserDto findById(Integer id); /** * 创建 * @param resources / - * @return BotSendOrderDto + * @return TbShopUserDto */ - BotSendOrderDto create(BotSendOrder resources); + TbShopUserDto create(TbShopUser resources); /** * 编辑 * @param resources / */ - void update(BotSendOrder resources); + void update(TbShopUser resources); /** * 多选删除 @@ -79,5 +79,5 @@ public interface BotSendOrderService { * @param response / * @throws IOException / */ - void download(List all, HttpServletResponse response) throws IOException; + void download(List all, HttpServletResponse response) throws IOException; } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/dto/TbShopUserDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/dto/TbShopUserDto.java new file mode 100644 index 00000000..d262ba29 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/dto/TbShopUserDto.java @@ -0,0 +1,111 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopUser.service.dto; + +import lombok.Data; +import java.math.BigDecimal; +import java.io.Serializable; + +/** +* @website https://eladmin.vip +* @description / +* @author lyf +* @date 2024-03-01 +**/ +@Data +public class TbShopUserDto implements Serializable { + + /** (随机) */ + private Integer id; + + /** 钱包余额 */ + private BigDecimal amount; + + /** 授权金额 */ + private BigDecimal creditAmount; + + /** 消费累计 */ + private BigDecimal consumeAmount; + + /** 消费数量累计 */ + private Integer consumeNumber; + + /** 等级积分 */ + private BigDecimal levelConsume; + + /** 0-不可使用 1可使用 */ + private Integer status; + + /** 代理Id */ + private String merchantId; + + /** 店铺Id */ + private String shopId; + + /** 用户Id */ + private String userId; + + /** 上级Id */ + private String parentId; + + /** 上级的层级 */ + private String parentLevel; + + /** 真实名字 */ + private String name; + + private String headImg; + + /** 性别 */ + private Integer sex; + + /** 生日 */ + private String birthDay; + + /** 联系电话 */ + private String telephone; + + /** 是否会员, */ + private Integer isVip; + + /** 会员编号 */ + private String code; + + /** 是否通过关注而成为会员的,此字段固定后不改 */ + private Integer isAttention; + + /** 关注时间 */ + private Integer attentionAt; + + /** 是否股东(分销商) */ + private Integer isShareholder; + + /** 层级1-顶级 2-次级 3最低 */ + private Integer level; + + /** 分销类型 auto-自动获取 set手动设置 charge充值 */ + private String distributeType; + + /** 排序 */ + private Integer sort; + + private Long createdAt; + + private Long updatedAt; + + /** 小程序openId */ + private String miniOpenId; +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/dto/TbShopUserQueryCriteria.java similarity index 65% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderQueryCriteria.java rename to eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/dto/TbShopUserQueryCriteria.java index d48c1218..5acdd420 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/dto/BotSendOrderQueryCriteria.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/dto/TbShopUserQueryCriteria.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service.dto; +package me.zhengjie.modules.shopInfo.shopUser.service.dto; import lombok.Data; import java.util.List; @@ -21,29 +21,22 @@ import me.zhengjie.annotation.Query; /** * @website https://eladmin.vip -* @author admin -* @date 2023-10-30 +* @author lyf +* @date 2024-03-01 **/ @Data -public class BotSendOrderQueryCriteria{ +public class TbShopUserQueryCriteria{ - /** 精确 */ - @Query - private String orderCode; + /** 模糊 */ + @Query(type = Query.Type.INNER_LIKE) + private String name; - /** 精确 */ - @Query - private String userTelegramId; + /** 模糊 */ + @Query(type = Query.Type.INNER_LIKE) + private String telephone; - /** 精确 */ @Query - private String userName; - - /** 精确 */ + private String shopId; @Query - private String status; - - /** 精确 */ - @Query - private String type; + private Integer isVip=1; } \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/impl/TbShopUserServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/impl/TbShopUserServiceImpl.java new file mode 100644 index 00000000..c6b83a92 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/impl/TbShopUserServiceImpl.java @@ -0,0 +1,130 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.shopInfo.shopUser.service.impl; + +import me.zhengjie.modules.shopInfo.shopUser.domain.TbShopUser; +import me.zhengjie.utils.ValidationUtil; +import me.zhengjie.utils.FileUtil; +import lombok.RequiredArgsConstructor; +import me.zhengjie.modules.shopInfo.shopUser.repository.TbShopUserRepository; +import me.zhengjie.modules.shopInfo.shopUser.service.TbShopUserService; +import me.zhengjie.modules.shopInfo.shopUser.service.dto.TbShopUserDto; +import me.zhengjie.modules.shopInfo.shopUser.service.dto.TbShopUserQueryCriteria; +import me.zhengjie.modules.shopInfo.shopUser.service.mapstruct.TbShopUserMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import me.zhengjie.utils.PageUtil; +import me.zhengjie.utils.QueryHelp; +import java.util.List; +import java.util.Map; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.LinkedHashMap; + +/** +* @website https://eladmin.vip +* @description 服务实现 +* @author lyf +* @date 2024-03-01 +**/ +@Service +@RequiredArgsConstructor +public class TbShopUserServiceImpl implements TbShopUserService { + + private final TbShopUserRepository tbShopUserRepository; + private final TbShopUserMapper tbShopUserMapper; + + @Override + public Map queryAll(TbShopUserQueryCriteria criteria, Pageable pageable){ + Page page = tbShopUserRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable); + return PageUtil.toPage(page.map(tbShopUserMapper::toDto)); + } + + @Override + public List queryAll(TbShopUserQueryCriteria criteria){ + return tbShopUserMapper.toDto(tbShopUserRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder))); + } + + @Override + @Transactional + public TbShopUserDto findById(Integer id) { + TbShopUser tbShopUser = tbShopUserRepository.findById(id).orElseGet(TbShopUser::new); + ValidationUtil.isNull(tbShopUser.getId(),"TbShopUser","id",id); + return tbShopUserMapper.toDto(tbShopUser); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public TbShopUserDto create(TbShopUser resources) { + return tbShopUserMapper.toDto(tbShopUserRepository.save(resources)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(TbShopUser resources) { + TbShopUser tbShopUser = tbShopUserRepository.findById(resources.getId()).orElseGet(TbShopUser::new); + ValidationUtil.isNull( tbShopUser.getId(),"TbShopUser","id",resources.getId()); + tbShopUser.copy(resources); + tbShopUserRepository.save(tbShopUser); + } + + @Override + public void deleteAll(Integer[] ids) { + for (Integer id : ids) { + tbShopUserRepository.deleteById(id); + } + } + + @Override + public void download(List all, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + for (TbShopUserDto tbShopUser : all) { + Map map = new LinkedHashMap<>(); + map.put("钱包余额", tbShopUser.getAmount()); + map.put("授权金额", tbShopUser.getCreditAmount()); + map.put("消费累计", tbShopUser.getConsumeAmount()); + map.put("消费数量累计", tbShopUser.getConsumeNumber()); + map.put("等级积分", tbShopUser.getLevelConsume()); + map.put("0-不可使用 1可使用", tbShopUser.getStatus()); + map.put("代理Id", tbShopUser.getMerchantId()); + map.put("店铺Id", tbShopUser.getShopId()); + map.put("用户Id", tbShopUser.getUserId()); + map.put("上级Id", tbShopUser.getParentId()); + map.put("上级的层级", tbShopUser.getParentLevel()); + map.put("真实名字", tbShopUser.getName()); + map.put(" headImg", tbShopUser.getHeadImg()); + map.put("性别", tbShopUser.getSex()); + map.put("生日", tbShopUser.getBirthDay()); + map.put("联系电话", tbShopUser.getTelephone()); + map.put("是否会员,", tbShopUser.getIsVip()); + map.put("会员编号", tbShopUser.getCode()); + map.put("是否通过关注而成为会员的,此字段固定后不改", tbShopUser.getIsAttention()); + map.put("关注时间", tbShopUser.getAttentionAt()); + map.put("是否股东(分销商)", tbShopUser.getIsShareholder()); + map.put("层级1-顶级 2-次级 3最低", tbShopUser.getLevel()); + map.put("分销类型 auto-自动获取 set手动设置 charge充值", tbShopUser.getDistributeType()); + map.put("排序", tbShopUser.getSort()); + map.put(" createdAt", tbShopUser.getCreatedAt()); + map.put(" updatedAt", tbShopUser.getUpdatedAt()); + map.put("小程序openId", tbShopUser.getMiniOpenId()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } +} \ No newline at end of file diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/ViewBoxOrderMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/mapstruct/TbShopUserMapper.java similarity index 72% rename from eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/ViewBoxOrderMapper.java rename to eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/mapstruct/TbShopUserMapper.java index 35f7e173..b3151722 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/oder/service/mapstruct/ViewBoxOrderMapper.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/shopInfo/shopUser/service/mapstruct/TbShopUserMapper.java @@ -13,20 +13,20 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package me.zhengjie.modules.oder.service.mapstruct; +package me.zhengjie.modules.shopInfo.shopUser.service.mapstruct; import me.zhengjie.base.BaseMapper; -import me.zhengjie.modules.oder.domain.ViewBoxOrder; -import me.zhengjie.modules.oder.service.dto.ViewBoxOrderDto; +import me.zhengjie.modules.shopInfo.shopUser.domain.TbShopUser; +import me.zhengjie.modules.shopInfo.shopUser.service.dto.TbShopUserDto; import org.mapstruct.Mapper; import org.mapstruct.ReportingPolicy; /** * @website https://eladmin.vip -* @author admin -* @date 2023-06-23 +* @author lyf +* @date 2024-03-01 **/ @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) -public interface ViewBoxOrderMapper extends BaseMapper { +public interface TbShopUserMapper extends BaseMapper { } \ No newline at end of file diff --git a/eladmin-system/src/main/resources/template/generator/admin/Controller.ftl b/eladmin-system/src/main/resources/template/generator/admin/Controller.ftl index 5af73ddb..aa0d23f1 100644 --- a/eladmin-system/src/main/resources/template/generator/admin/Controller.ftl +++ b/eladmin-system/src/main/resources/template/generator/admin/Controller.ftl @@ -46,7 +46,6 @@ public class ${className}Controller { @Log("导出数据") @ApiOperation("导出数据") @GetMapping(value = "/download") - @PreAuthorize("@el.check('${changeClassName}:list')") public void export${className}(HttpServletResponse response, ${className}QueryCriteria criteria) throws IOException { ${changeClassName}Service.download(${changeClassName}Service.queryAll(criteria), response); } @@ -54,7 +53,6 @@ public class ${className}Controller { @GetMapping @Log("查询${apiAlias}") @ApiOperation("查询${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:list')") public ResponseEntity query${className}(${className}QueryCriteria criteria, Pageable pageable){ return new ResponseEntity<>(${changeClassName}Service.queryAll(criteria,pageable),HttpStatus.OK); } @@ -62,7 +60,6 @@ public class ${className}Controller { @PostMapping @Log("新增${apiAlias}") @ApiOperation("新增${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:add')") public ResponseEntity create${className}(@Validated @RequestBody ${className} resources){ return new ResponseEntity<>(${changeClassName}Service.create(resources),HttpStatus.CREATED); } @@ -70,7 +67,6 @@ public class ${className}Controller { @PutMapping @Log("修改${apiAlias}") @ApiOperation("修改${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:edit')") public ResponseEntity update${className}(@Validated @RequestBody ${className} resources){ ${changeClassName}Service.update(resources); return new ResponseEntity<>(HttpStatus.NO_CONTENT); @@ -79,7 +75,6 @@ public class ${className}Controller { @DeleteMapping @Log("删除${apiAlias}") @ApiOperation("删除${apiAlias}") - @PreAuthorize("@el.check('${changeClassName}:del')") public ResponseEntity delete${className}(@RequestBody ${pkColumnType}[] ids) { ${changeClassName}Service.deleteAll(ids); return new ResponseEntity<>(HttpStatus.OK);