From c439bf4c4c7f1744eac332824ec12a84174fdf51 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 8 Apr 2026 16:23:07 +0800 Subject: [PATCH 1/3] =?UTF-8?q?feat:=E7=A7=AF=E5=88=86=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/800pjcloudx_wallet.sql | 51 +++++++- .../api/dto/integral/IntegralManageDto.java | 9 ++ .../dto/integral/IntegralTransactionDto.java | 9 ++ .../entity/integral/IntegralManageEntity.java | 106 +++++++++++++++++ .../integral/IntegralTransactionEntity.java | 112 ++++++++++++++++++ .../api/vo/integral/IntegralManageVo.java | 9 ++ .../vo/integral/IntegralTransactionVo.java | 9 ++ .../Integral/IntegralManageController.java | 102 ++++++++++++++++ .../IntegralTransactionController.java | 99 ++++++++++++++++ .../mapper/integral/IntegralManageMapper.java | 17 +++ .../integral/IntegralTransactionMapper.java | 17 +++ .../wallet/service/IntegralManageService.java | 17 +++ .../service/IntegralTransactionService.java | 14 +++ .../integral/IntegralManageServiceImpl.java | 33 ++++++ .../IntegralTransactionServiceImpl.java | 30 +++++ .../mapper/integral/IntegralManageMapper.xml | 38 ++++++ .../integral/IntegralTransactionMapper.xml | 38 ++++++ 17 files changed, 709 insertions(+), 1 deletion(-) create mode 100644 pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralManageDto.java create mode 100644 pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralTransactionDto.java create mode 100755 pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralManageEntity.java create mode 100755 pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralTransactionEntity.java create mode 100644 pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralManageVo.java create mode 100644 pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralTransactionVo.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralManageController.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralTransactionController.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralManageMapper.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralTransactionMapper.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralManageService.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralTransactionService.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralManageServiceImpl.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralTransactionServiceImpl.java create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralManageMapper.xml create mode 100755 pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralTransactionMapper.xml diff --git a/db/800pjcloudx_wallet.sql b/db/800pjcloudx_wallet.sql index 770c0e1dc..7ffea9785 100644 --- a/db/800pjcloudx_wallet.sql +++ b/db/800pjcloudx_wallet.sql @@ -708,4 +708,53 @@ CREATE TABLE mch_pick_up_join mch_id bigint NOT NULL COMMENT '商户id', mch_pick_up_id bigint NOT NULL COMMENT '自提点id', PRIMARY KEY (id) -) ENGINE = InnoDB COMMENT ='商户自提点关联表'; \ No newline at end of file +) ENGINE = InnoDB COMMENT ='商户自提点关联表'; + + +-- ---------------------------- +-- Table structure for integral_manage +-- ---------------------------- +DROP TABLE IF EXISTS integral_manage; +CREATE TABLE integral_manage +( + id bigint NOT NULL AUTO_INCREMENT COMMENT '创建者', + + user_id bigint default NULL COMMENT '用户id', + dept_id bigint NOT NULL COMMENT '部门id', + + integral_num int NOT NULL DEFAULT 0 COMMENT '积分总数', + total_expense int NOT NULL DEFAULT 0 COMMENT '累计积分支出', + total_recharge int NOT NULL DEFAULT 0 COMMENT '累计积分获得', + integral_freeze int NOT NULL DEFAULT 0 COMMENT '冻结积分数', + + create_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', + create_time datetime DEFAULT NULL COMMENT '创建时间', + update_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '修改人', + update_time datetime DEFAULT NULL COMMENT '修改时间', + del_flag char(1) COLLATE utf8mb4_general_ci DEFAULT '0' COMMENT '删除标记', + tenant_id bigint DEFAULT NULL COMMENT '租户ID', + PRIMARY KEY (id) +) ENGINE = InnoDB COMMENT ='积分管理'; + +-- ---------------------------- +-- Table structure for integral_transaction +-- ---------------------------- +DROP TABLE IF EXISTS integral_transaction; +CREATE TABLE integral_transaction +( + id bigint NOT NULL AUTO_INCREMENT COMMENT '创建者', + integral_id bigint NOT NULL COMMENT '积分总数', + dept_id bigint NOT NULL COMMENT '部门id', + biz_type varchar(256) NOT NULL COMMENT '关联类型', + biz_id varchar(64) NOT NULL COMMENT '关联业务编号', + title varchar(128) NOT NULL COMMENT '流水标题', + integral_num int NOT NULL COMMENT '流水积分', + integral_balance int NOT NULL COMMENT '积分余额', + create_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', + create_time datetime DEFAULT NULL COMMENT '创建时间', + update_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '修改人', + update_time datetime DEFAULT NULL COMMENT '修改时间', + del_flag char(1) COLLATE utf8mb4_general_ci DEFAULT '0' COMMENT '删除标记', + tenant_id bigint DEFAULT NULL COMMENT '租户ID', + PRIMARY KEY (id) +) ENGINE = InnoDB COMMENT ='积分记录'; \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralManageDto.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralManageDto.java new file mode 100644 index 000000000..82108bbb1 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralManageDto.java @@ -0,0 +1,9 @@ +package com.bsd.pjcloud.wallet.api.dto.integral; + +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralManageEntity; +import lombok.Data; + +@Data +public class IntegralManageDto extends IntegralManageEntity { + +} diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralTransactionDto.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralTransactionDto.java new file mode 100644 index 000000000..022642cc4 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/dto/integral/IntegralTransactionDto.java @@ -0,0 +1,9 @@ +package com.bsd.pjcloud.wallet.api.dto.integral; + +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralTransactionEntity; +import lombok.Data; + +@Data +public class IntegralTransactionDto extends IntegralTransactionEntity { + +} diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralManageEntity.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralManageEntity.java new file mode 100755 index 000000000..f43a86f11 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralManageEntity.java @@ -0,0 +1,106 @@ +package com.bsd.pjcloud.wallet.api.entity.integral; + +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.bsd.pjcloud.common.core.util.TenantTable; + +import java.time.LocalDateTime; + +/** + * 用户积分 + */ +@Data +@TenantTable +@TableName("integral_manage") +@EqualsAndHashCode(callSuper = true) +@Schema(description = "用户积分") +public class IntegralManageEntity extends Model { + + /** + * 创建者 + */ + @TableId(type = IdType.ASSIGN_ID) + @Schema(description = "创建者") + private Long id; + + /** + * 用户id + */ + @Schema(description = "用户id") + private Long userId; + + /** + * 部门id + */ + @Schema(description = "部门id") + private Long deptId; + + /** + * 积分总数 + */ + @Schema(description = "积分总数") + private Integer integralNum; + + /** + * 累计积分支出 + */ + @Schema(description = "累计积分支出") + private Integer totalExpense; + + /** + * 累计积分获得 + */ + @Schema(description = "累计积分获得") + private Integer totalRecharge; + + /** + * 冻结积分数 + */ + @Schema(description = "冻结积分数") + private Integer integralFreeze; + + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @Schema(description = "创建人") + private String createBy; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + @Schema(description = "创建时间") + private LocalDateTime createTime; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + @Schema(description = "修改人") + private String updateBy; + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + @Schema(description = "修改时间") + private LocalDateTime updateTime; + + /** + * 删除标记 + */ + @TableLogic + @TableField(fill = FieldFill.INSERT) + @Schema(description = "删除标记") + private String delFlag; + + /** + * 租户ID + */ + @Schema(description = "租户ID") + private Long tenantId; +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralTransactionEntity.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralTransactionEntity.java new file mode 100755 index 000000000..8206f3058 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/integral/IntegralTransactionEntity.java @@ -0,0 +1,112 @@ +package com.bsd.pjcloud.wallet.api.entity.integral; + +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.bsd.pjcloud.common.core.util.TenantTable; + +import java.time.LocalDateTime; + +/** + * 积分记录 + */ +@Data +@TenantTable +@TableName("integral_transaction") +@EqualsAndHashCode(callSuper = true) +@Schema(description = "积分记录") +public class IntegralTransactionEntity extends Model { + + /** + * 创建者 + */ + @TableId(type = IdType.ASSIGN_ID) + @Schema(description = "创建者") + private Long id; + + /** + * 积分总数 + */ + @Schema(description = "积分总数") + private Long integralId; + + /** + * 部门id + */ + @Schema(description = "部门id") + private Long deptId; + + /** + * 关联类型 + */ + @Schema(description = "关联类型") + private String bizType; + + /** + * 关联业务编号 + */ + @Schema(description = "关联业务编号") + private String bizId; + + /** + * 流水标题 + */ + @Schema(description = "流水标题") + private String title; + + /** + * 流水积分 + */ + @Schema(description = "流水积分") + private Integer integralNum; + + /** + * 积分余额 + */ + @Schema(description = "积分余额") + private Integer integralBalance; + + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @Schema(description = "创建人") + private String createBy; + + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + @Schema(description = "创建时间") + private LocalDateTime createTime; + + /** + * 修改人 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + @Schema(description = "修改人") + private String updateBy; + + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + @Schema(description = "修改时间") + private LocalDateTime updateTime; + + /** + * 删除标记 + */ + @TableLogic + @TableField(fill = FieldFill.INSERT) + @Schema(description = "删除标记") + private String delFlag; + + /** + * 租户ID + */ + @Schema(description = "租户ID") + private Long tenantId; +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralManageVo.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralManageVo.java new file mode 100644 index 000000000..f62012566 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralManageVo.java @@ -0,0 +1,9 @@ +package com.bsd.pjcloud.wallet.api.vo.integral; + +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralManageEntity; +import lombok.Data; + +@Data +public class IntegralManageVo extends IntegralManageEntity { + +} diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralTransactionVo.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralTransactionVo.java new file mode 100644 index 000000000..295489960 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/vo/integral/IntegralTransactionVo.java @@ -0,0 +1,9 @@ +package com.bsd.pjcloud.wallet.api.vo.integral; + +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralTransactionEntity; +import lombok.Data; + +@Data +public class IntegralTransactionVo extends IntegralTransactionEntity { + +} diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralManageController.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralManageController.java new file mode 100755 index 000000000..a4893485f --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralManageController.java @@ -0,0 +1,102 @@ +package com.bsd.pjcloud.wallet.controller.Integral; + +import cn.hutool.core.util.ArrayUtil; +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bsd.pjcloud.common.core.util.R; +import com.bsd.pjcloud.common.log.annotation.SysLog; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralManageDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralManageEntity; +import com.bsd.pjcloud.wallet.api.vo.integral.IntegralManageVo; +import com.bsd.pjcloud.wallet.service.IntegralManageService; +import org.springframework.security.access.prepost.PreAuthorize; +import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; +import io.swagger.v3.oas.annotations.security.SecurityRequirement; +import org.springdoc.core.annotations.ParameterObject; +import org.springframework.http.HttpHeaders; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Objects; + +/** + * 用户积分 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/integral-manage") +@Tag(description = "integralManage", name = "用户积分管理") +@SecurityRequirement(name = HttpHeaders.AUTHORIZATION) +public class IntegralManageController { + + private final IntegralManageService integralManageService; + + /** + * 查询分页页面 + */ + @Operation(summary = "分页查询", description = "分页查询") + @GetMapping("/page") + @PreAuthorize("@pms.hasPermission('wallet_integralManage_view')") + public R> getIntegralManagePage(@ParameterObject Page page, @ParameterObject IntegralManageDto dto) { + return R.ok(integralManageService.scopePageList(page, dto, null)); + } + + /** + * 通过id查询用户积分 + */ + @Operation(summary = "通过id查询", description = "通过id查询") + @GetMapping("/{id}") + @PreAuthorize("@pms.hasPermission('wallet_integralManage_view')") + public R getById(@PathVariable("id") Long id) { + return R.ok(integralManageService.getById(id)); + } + + /** + * 新增用户积分 + */ + @Operation(summary = "新增用户积分", description = "新增用户积分") + @SysLog("新增用户积分") + @PostMapping + @PreAuthorize("@pms.hasPermission('wallet_integralManage_add')") + public R save(@RequestBody IntegralManageEntity integralManage) { + return R.ok(integralManageService.save(integralManage)); + } + + /** + * 修改用户积分 + */ + @Operation(summary = "修改用户积分", description = "修改用户积分") + @SysLog("修改用户积分") + @PutMapping + @PreAuthorize("@pms.hasPermission('wallet_integralManage_edit')") + public R updateById(@RequestBody IntegralManageEntity integralManage) { + return R.ok(integralManageService.updateById(integralManage)); + } + + /** + * 通过id删除用户积分 + */ + @Operation(summary = "通过id删除用户积分", description = "通过id删除用户积分") + @SysLog("通过id删除用户积分") + @DeleteMapping + @PreAuthorize("@pms.hasPermission('wallet_integralManage_del')") + public R removeById(@RequestBody Long[] ids) { + return R.ok(integralManageService.removeBatchByIds(CollUtil.toList(ids))); + } + + /** + * 导出excel 表格 + */ + @ResponseExcel + @GetMapping("/export") + @PreAuthorize("@pms.hasPermission('wallet_integralManage_export')") + public List export(IntegralManageEntity integralManage, Long[] ids) { + return integralManageService.list(Wrappers.lambdaQuery(integralManage).in(ArrayUtil.isNotEmpty(ids), IntegralManageEntity::getId, ids)); + } + +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralTransactionController.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralTransactionController.java new file mode 100755 index 000000000..9eae9ce40 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/Integral/IntegralTransactionController.java @@ -0,0 +1,99 @@ +package com.bsd.pjcloud.wallet.controller.Integral; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ArrayUtil; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bsd.pjcloud.common.core.util.R; +import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; +import com.bsd.pjcloud.common.log.annotation.SysLog; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralTransactionDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralTransactionEntity; +import com.bsd.pjcloud.wallet.service.IntegralTransactionService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.security.SecurityRequirement; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springdoc.core.annotations.ParameterObject; +import org.springframework.http.HttpHeaders; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 积分记录 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/integralTransaction") +@Tag(description = "integralTransaction", name = "积分记录管理") +@SecurityRequirement(name = HttpHeaders.AUTHORIZATION) +public class IntegralTransactionController { + + private final IntegralTransactionService integralTransactionService; + + /** + * 分页查询 + */ + @Operation(summary = "分页查询", description = "分页查询") + @GetMapping("/page") + @PreAuthorize("@pms.hasPermission('wallet_integralTransaction_view')") + public R getIntegralTransactionPage(@ParameterObject Page page, @ParameterObject IntegralTransactionDto dto) { + return R.ok(integralTransactionService.scopePageList(page, dto, null)); + } + + /** + * 通过id查询积分记录 + */ + @Operation(summary = "通过id查询", description = "通过id查询") + @GetMapping("/{id}") + @PreAuthorize("@pms.hasPermission('wallet_integralTransaction_view')") + public R getById(@PathVariable("id") Long id) { + return R.ok(integralTransactionService.getById(id)); + } + + /** + * 新增积分记录 + */ + @Operation(summary = "新增积分记录", description = "新增积分记录") + @SysLog("新增积分记录") + @PostMapping + @PreAuthorize("@pms.hasPermission('wallet_integralTransaction_add')") + public R save(@RequestBody IntegralTransactionEntity integralTransaction) { + return R.ok(integralTransactionService.save(integralTransaction)); + } + + /** + * 修改积分记录 + */ + @Operation(summary = "修改积分记录", description = "修改积分记录") + @SysLog("修改积分记录") + @PutMapping + @PreAuthorize("@pms.hasPermission('wallet_integralTransaction_edit')") + public R updateById(@RequestBody IntegralTransactionEntity integralTransaction) { + return R.ok(integralTransactionService.updateById(integralTransaction)); + } + + /** + * 通过id删除积分记录 + */ + @Operation(summary = "通过id删除积分记录", description = "通过id删除积分记录") + @SysLog("通过id删除积分记录") + @DeleteMapping + @PreAuthorize("@pms.hasPermission('wallet_integralTransaction_del')") + public R removeById(@RequestBody Long[] ids) { + return R.ok(integralTransactionService.removeBatchByIds(CollUtil.toList(ids))); + } + + + /** + * 导出excel 表格 + */ + @ResponseExcel + @GetMapping("/export") + @PreAuthorize("@pms.hasPermission('wallet_integralTransaction_export')") + public List export(IntegralTransactionEntity integralTransaction, Long[] ids) { + return integralTransactionService.list(Wrappers.lambdaQuery(integralTransaction).in(ArrayUtil.isNotEmpty(ids), IntegralTransactionEntity::getId, ids)); + } +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralManageMapper.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralManageMapper.java new file mode 100755 index 000000000..7f3316b06 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralManageMapper.java @@ -0,0 +1,17 @@ +package com.bsd.pjcloud.wallet.mapper.integral; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bsd.pjcloud.common.data.datascope.DataScope; +import com.bsd.pjcloud.common.data.datascope.PjcloudBaseMapper; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralManageDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralManageEntity; +import com.bsd.pjcloud.wallet.api.vo.integral.IntegralManageVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface IntegralManageMapper extends PjcloudBaseMapper { + + Page scopePageList(Page page, @Param("dto") IntegralManageDto dto, DataScope dataScope); + +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralTransactionMapper.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralTransactionMapper.java new file mode 100755 index 000000000..5436f3ff9 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/mapper/integral/IntegralTransactionMapper.java @@ -0,0 +1,17 @@ +package com.bsd.pjcloud.wallet.mapper.integral; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bsd.pjcloud.common.data.datascope.DataScope; +import com.bsd.pjcloud.common.data.datascope.PjcloudBaseMapper; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralTransactionDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralTransactionEntity; +import com.bsd.pjcloud.wallet.api.vo.integral.IntegralTransactionVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface IntegralTransactionMapper extends PjcloudBaseMapper { + + Page scopePageList(Page page, @Param("dto") IntegralTransactionDto dto, DataScope dataScope); + +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralManageService.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralManageService.java new file mode 100755 index 000000000..1ba8b3d33 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralManageService.java @@ -0,0 +1,17 @@ +package com.bsd.pjcloud.wallet.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.bsd.pjcloud.common.data.datascope.DataScope; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralManageDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralManageEntity; +import com.bsd.pjcloud.wallet.api.vo.integral.IntegralManageVo; + +public interface IntegralManageService extends IService { + + /** + * 分页查询 + */ + Page scopePageList(Page page, IntegralManageDto dto, DataScope dataScope); + +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralTransactionService.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralTransactionService.java new file mode 100755 index 000000000..4f7e73b5d --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/IntegralTransactionService.java @@ -0,0 +1,14 @@ +package com.bsd.pjcloud.wallet.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.bsd.pjcloud.common.data.datascope.DataScope; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralTransactionDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralTransactionEntity; +import com.bsd.pjcloud.wallet.api.vo.integral.IntegralTransactionVo; + +public interface IntegralTransactionService extends IService { + + Page scopePageList(Page page, IntegralTransactionDto dto, DataScope dataScope); + +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralManageServiceImpl.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralManageServiceImpl.java new file mode 100755 index 000000000..3e16979d2 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralManageServiceImpl.java @@ -0,0 +1,33 @@ +package com.bsd.pjcloud.wallet.service.impl.integral; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.bsd.pjcloud.common.data.datascope.DataScope; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralManageDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralManageEntity; +import com.bsd.pjcloud.wallet.api.vo.integral.IntegralManageVo; +import com.bsd.pjcloud.wallet.mapper.integral.IntegralManageMapper; +import com.bsd.pjcloud.wallet.service.IntegralManageService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +/** + * 用户积分 + */ +@Validated +@Slf4j +@RequiredArgsConstructor +@Service +public class IntegralManageServiceImpl extends ServiceImpl implements IntegralManageService { + + /** + * 分页查询 + */ + @Override + public Page scopePageList(Page page, IntegralManageDto dto, DataScope dataScope) { + return baseMapper.scopePageList(page, dto, dataScope); + } + +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralTransactionServiceImpl.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralTransactionServiceImpl.java new file mode 100755 index 000000000..4142aea85 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/integral/IntegralTransactionServiceImpl.java @@ -0,0 +1,30 @@ +package com.bsd.pjcloud.wallet.service.impl.integral; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.bsd.pjcloud.common.data.datascope.DataScope; +import com.bsd.pjcloud.wallet.api.dto.integral.IntegralTransactionDto; +import com.bsd.pjcloud.wallet.api.entity.integral.IntegralTransactionEntity; +import com.bsd.pjcloud.wallet.api.vo.integral.IntegralTransactionVo; +import com.bsd.pjcloud.wallet.mapper.integral.IntegralTransactionMapper; +import com.bsd.pjcloud.wallet.service.IntegralTransactionService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +/** + * 积分记录 + */ +@Validated +@Slf4j +@RequiredArgsConstructor +@Service +public class IntegralTransactionServiceImpl extends ServiceImpl implements IntegralTransactionService { + + @Override + public Page scopePageList(Page page, IntegralTransactionDto dto, DataScope dataScope) { + return baseMapper.scopePageList(page, dto, dataScope); + } + +} \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralManageMapper.xml b/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralManageMapper.xml new file mode 100755 index 000000000..80de84459 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralManageMapper.xml @@ -0,0 +1,38 @@ + + + + + + + select a.id, + a.user_id, + a.dept_id, + a.integral_num, + a.total_expense, + a.total_recharge, + a.integral_freeze, + a.create_by, + a.create_time, + a.update_by, + a.update_time, + a.del_flag, + a.tenant_id + + + + a.del_flag = '0' + + and a.user_id = #{dto.userId} + + + + + + \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralTransactionMapper.xml b/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralTransactionMapper.xml new file mode 100755 index 000000000..eefc3de98 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/integral/IntegralTransactionMapper.xml @@ -0,0 +1,38 @@ + + + + + + select a.id, + a.integral_id, + a.dept_id, + a.biz_type, + a.biz_id, + a.title, + a.integral_num, + a.integral_balance, + a.create_by, + a.create_time, + a.update_by, + a.update_time, + a.del_flag, + a.tenant_id + + + + a.del_flag = '0' + + and a.integral_id = #{dto.integralId} + + + + + + \ No newline at end of file From a0cca668d959f7a49ccbed01c82db62b1cddeb5a Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 8 Apr 2026 16:48:20 +0800 Subject: [PATCH 2/3] =?UTF-8?q?feat:=E6=9B=B4=E6=94=B9=E5=A4=96=E5=8D=96?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../constant/order/HardOrderStatusEnum.java | 7 +++- .../remote/HardUpdateTakeOutStatusDto.java | 24 ++++++++++++ .../api/feign/RemoteHardOrderService.java | 5 +++ .../controller/order/HardOrderController.java | 12 +++++- .../hard/service/HardOrderService.java | 6 +++ .../impl/order/HardOrderServiceImpl.java | 39 ++++++++++++++++++- 6 files changed, 89 insertions(+), 4 deletions(-) create mode 100644 pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderStatusEnum.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderStatusEnum.java index 742a76838..867756f08 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderStatusEnum.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderStatusEnum.java @@ -9,6 +9,7 @@ import java.util.List; /** * 订单状态 + * 外卖状态 100(待接单(外卖))->110(配送中(外卖))-> 200(已核销(已完成)) */ @AllArgsConstructor @Getter @@ -18,8 +19,12 @@ public enum HardOrderStatusEnum { PAY("5", "已经支付"), OFFLINE_PAY("6", "没有网络本地支付"), REFUND("10", "退款"), - CANCEL("20", "已核销"), + CANCEL("20", "已核销(已完成)"), UNFOLLOW("30", "已取消(智能柜)"), + + TAKE_OUT_AWAIT("100", "待接单(外卖)"), + TAKE_OUT_ING("110", "配送中(外卖)"), + ; private final String type; private final String description; diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java new file mode 100644 index 000000000..49abe0e2d --- /dev/null +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java @@ -0,0 +1,24 @@ +package com.bsd.pjcloud.hard.api.dto.order.remote; + +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +@Data +public class HardUpdateTakeOutStatusDto { + + @NotNull(message = "订单id不能为空") + private Long orderId; + + @NotNull(message = "订单id不能为空") + private HardUpdateTakeOutStatusDto.TakeOutStatus status; + + public enum TakeOutStatus { + // 配送中 + TAKE_OUT_ING, + // 已完成 + DONE, + // 退款 + REFUND, CANCEL, + } + +} diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/feign/RemoteHardOrderService.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/feign/RemoteHardOrderService.java index b69f95feb..6f1ff8282 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/feign/RemoteHardOrderService.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/feign/RemoteHardOrderService.java @@ -5,6 +5,7 @@ import com.bsd.pjcloud.common.core.constant.ServiceNameConstants; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.feign.annotation.NoToken; import com.bsd.pjcloud.hard.api.dto.order.HardOrderPreferencesDto; +import com.bsd.pjcloud.hard.api.dto.order.remote.HardUpdateTakeOutStatusDto; import com.bsd.pjcloud.hard.api.entity.order.HardOrderEntity; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; @@ -27,4 +28,8 @@ public interface RemoteHardOrderService { @NoToken @GetMapping("/hard-order/mch-count-by-id") R getMchCountById(@RequestParam Long id); + + @NoToken + @PostMapping("/hard-order/update-take-out-status") + R updateTakeOutStatus(@RequestBody HardUpdateTakeOutStatusDto dto); } diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java index b2549385f..8cafc4016 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java @@ -37,6 +37,7 @@ import com.bsd.pjcloud.hard.api.dto.order.act.HardCreateActOrderDto; import com.bsd.pjcloud.hard.api.dto.order.app.HardAppCreateFarmerOrderDto; import com.bsd.pjcloud.hard.api.dto.order.app.HardAppCreateOrderDto; import com.bsd.pjcloud.hard.api.dto.order.app.HardAppCreateTakeOutOrderDto; +import com.bsd.pjcloud.hard.api.dto.order.remote.HardUpdateTakeOutStatusDto; import com.bsd.pjcloud.hard.api.entity.order.HardOrderEntity; import com.bsd.pjcloud.hard.api.vo.order.HardOrderVo; import com.bsd.pjcloud.hard.api.vo.order.excel.HardOrderExcelVo; @@ -92,7 +93,7 @@ public class HardOrderController { /* ************************************* start 远程调用 start ************************************* */ @Inner - @Operation(summary = "app查询订单列表", description = "app查询订单列表") + @Operation(summary = "查询订单列表", description = "查询订单列表") @GetMapping("/get-by-ids") public R> getByIds(@RequestParam List ids) { HardOrderDto dto = new HardOrderDto(); @@ -101,7 +102,7 @@ public class HardOrderController { } @Inner - @Operation(summary = "app查询订单列表", description = "app查询订单列表") + @Operation(summary = "查询订单", description = "查询订单") @GetMapping("/mch-count-by-id") public R getMchCountById(@RequestParam Long id) { LambdaQueryWrapper query = new LambdaQueryWrapper().eq(HardOrderEntity::getMerchantId, id); @@ -109,6 +110,13 @@ public class HardOrderController { if (ObjectUtil.isEmpty(count)) count = 0L; return R.ok(count); } + + @Inner + @Operation(summary = "更改外卖订单状态", description = "更改外卖订单状态") + @PostMapping("/update-take-out-status") + public R updateTakeOutStatus(@RequestBody HardUpdateTakeOutStatusDto dto) { + return R.ok(hardwareOrderService.updateTakeOutStatus(dto)); + } /* ************************************* end 远程调用 ************************************* */ /* ************************************* start app start ************************************* */ diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java index e6e3ffe15..40dfa628b 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java @@ -18,6 +18,7 @@ import com.bsd.pjcloud.hard.api.dto.order.HardOrderDto; import com.bsd.pjcloud.hard.api.dto.order.act.HardCreateActOrderDto; import com.bsd.pjcloud.hard.api.dto.order.app.HardAppCreateFarmerOrderDto; import com.bsd.pjcloud.hard.api.dto.order.app.HardAppCreateOrderDto; +import com.bsd.pjcloud.hard.api.dto.order.remote.HardUpdateTakeOutStatusDto; import com.bsd.pjcloud.hard.api.dto.order.xfj.HardXfjFastCreateOrderDto; import com.bsd.pjcloud.hard.api.entity.order.HardCarEntity; import com.bsd.pjcloud.hard.api.entity.order.HardOrderEntity; @@ -74,6 +75,11 @@ public interface HardOrderService extends IService { */ Long appCreateTakeOutOrder(HardAppCreateOrderDto createOrderDto); + /** + * 更改外卖订单状态 + */ + Boolean updateTakeOutStatus(HardUpdateTakeOutStatusDto dto); + /** * app创建线上超市预定订单 */ diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java index f14e7a0c8..9741225d0 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java @@ -48,6 +48,7 @@ import com.bsd.pjcloud.hard.api.dto.order.HardOrderDto; import com.bsd.pjcloud.hard.api.dto.order.act.HardCreateActOrderDto; import com.bsd.pjcloud.hard.api.dto.order.app.HardAppCreateFarmerOrderDto; import com.bsd.pjcloud.hard.api.dto.order.app.HardAppCreateOrderDto; +import com.bsd.pjcloud.hard.api.dto.order.remote.HardUpdateTakeOutStatusDto; import com.bsd.pjcloud.hard.api.dto.order.xfj.HardXfjFastCreateOrderDto; import com.bsd.pjcloud.hard.api.dto.spu.DeductionSpuStockDto; import com.bsd.pjcloud.hard.api.dto.wechat.WechantReverseDto; @@ -638,7 +639,7 @@ public class HardOrderServiceImpl extends ServiceImpl Date: Wed, 8 Apr 2026 16:58:18 +0800 Subject: [PATCH 3/3] =?UTF-8?q?feat:=E6=9B=B4=E6=94=B9=E5=A4=96=E5=8D=96?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=8A=B6=E6=80=81v2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pjcloud/hard/api/constant/order/HardOrderTypeEnum.java | 2 +- .../api/dto/order/remote/HardUpdateTakeOutStatusDto.java | 2 +- .../hard/service/impl/order/HardOrderServiceImpl.java | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java index d3d207e88..96955c932 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java @@ -29,7 +29,7 @@ public enum HardOrderTypeEnum { public static HardOrderTypeEnum valueOfByType(String type) { if (ObjectUtil.isEmpty(type)) return null; - return Arrays.stream(values()).filter(v -> ObjectUtil.equals(type, v.getType())).findFirst().get(); + return Arrays.stream(values()).filter(v -> ObjectUtil.equals(type, v.getType())).findFirst().orElse(null); } public static final List refundList = List.of(BELOW, RESERVE, FOREIGN_TICKET, ZY, LB, FARMER, XFJ, TAKE_OUT); diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java index 49abe0e2d..93c0b02dd 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/remote/HardUpdateTakeOutStatusDto.java @@ -18,7 +18,7 @@ public class HardUpdateTakeOutStatusDto { // 已完成 DONE, // 退款 - REFUND, CANCEL, + REFUND, } } diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java index 9741225d0..8af9e32e6 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java @@ -695,6 +695,11 @@ public class HardOrderServiceImpl extends ServiceImpl