|
@@ -2,15 +2,20 @@ package com.qmrb.system.controller;
|
|
|
|
|
|
|
|
|
import cn.hutool.core.util.IdUtil;
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.qmrb.system.common.result.PageResult;
|
|
|
+import com.qmrb.system.common.result.Result;
|
|
|
+import com.qmrb.system.common.result.ResultCode;
|
|
|
+import com.qmrb.system.framework.resubmit.Resubmit;
|
|
|
import com.qmrb.system.pojo.dto.LoginParam;
|
|
|
import com.qmrb.system.pojo.dto.UserParam;
|
|
|
import com.qmrb.system.pojo.entity.Order;
|
|
|
import com.qmrb.system.pojo.entity.ToolWxConfig;
|
|
|
-import com.qmrb.system.pojo.vo.ReCreateOrderVO;
|
|
|
-import com.qmrb.system.pojo.vo.ToCreateOrderVO;
|
|
|
-import com.qmrb.system.pojo.vo.UserInfo;
|
|
|
-import com.qmrb.system.pojo.vo.WxLoginVO;
|
|
|
+import com.qmrb.system.pojo.form.PayOrderForm;
|
|
|
+import com.qmrb.system.pojo.query.PayOrderQuery;
|
|
|
+import com.qmrb.system.pojo.vo.*;
|
|
|
import com.qmrb.system.service.OrderService;
|
|
|
import com.qmrb.system.service.ToolWxConfigService;
|
|
|
import com.qmrb.system.service.UserService;
|
|
@@ -22,14 +27,24 @@ import com.qmrb.system.wxpayback.constant.wxpay.WXOrderConstant;
|
|
|
import com.wechat.pay.contrib.apache.httpclient.exception.ParseException;
|
|
|
import com.wechat.pay.contrib.apache.httpclient.exception.ValidationException;
|
|
|
import com.wechat.pay.contrib.apache.httpclient.notification.Notification;
|
|
|
+import io.swagger.v3.oas.annotations.Operation;
|
|
|
+import io.swagger.v3.oas.annotations.Parameter;
|
|
|
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
|
|
|
import jakarta.servlet.http.HttpServletRequest;
|
|
|
+import jakarta.validation.Valid;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springdoc.core.annotations.ParameterObject;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
@@ -53,6 +68,63 @@ public class OrderController extends CommonController {
|
|
|
@Autowired
|
|
|
private ToolWxConfigService toolWxConfigService;
|
|
|
|
|
|
+
|
|
|
+ @Operation(summary = "订单表分页列表", security = {@SecurityRequirement(name = "Authorization")})
|
|
|
+ @GetMapping("/page")
|
|
|
+ public PageResult<PayOrderVO> getPage(
|
|
|
+ @ParameterObject PayOrderQuery queryParams
|
|
|
+ ) {
|
|
|
+ Page<PayOrderVO> result = orderService.getPage(queryParams);
|
|
|
+ return PageResult.success(result);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Operation(summary = "新增订单表", security = {@SecurityRequirement(name = "Authorization")})
|
|
|
+ @PostMapping
|
|
|
+ @PreAuthorize("@ss.hasPerm('order:add')")
|
|
|
+ @Resubmit
|
|
|
+ public Result<PayOrderForm> saveForm(
|
|
|
+ @RequestBody @Valid PayOrderForm form
|
|
|
+ ) {
|
|
|
+ PayOrderForm result = orderService.saveForm(form);
|
|
|
+ return Result.success(result);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Operation(summary = "订单表表单数据", security = {@SecurityRequirement(name = "Authorization")})
|
|
|
+ @GetMapping("/{id}/form")
|
|
|
+ public Result<PayOrderForm> getForm(
|
|
|
+ @Parameter(description = "订单表ID") @PathVariable Long id
|
|
|
+ ) {
|
|
|
+ PayOrderForm formData = orderService.getFormData(id);
|
|
|
+ return Result.success(formData);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Operation(summary = "修改订单表", security = {@SecurityRequirement(name = "Authorization")})
|
|
|
+ @PutMapping(value = "/{id}")
|
|
|
+ @PreAuthorize("@ss.hasPerm('order:edit')")
|
|
|
+ public Result<?> updateForm(
|
|
|
+ @Parameter(description = "订单表ID") @PathVariable Long id,
|
|
|
+ @RequestBody @Validated PayOrderForm form) {
|
|
|
+
|
|
|
+ boolean result = orderService.updateForm(id,form);
|
|
|
+ return Result.judge(result);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Operation(summary = "删除订单表", security = {@SecurityRequirement(name = "Authorization")})
|
|
|
+ @DeleteMapping("/{ids}")
|
|
|
+ @PreAuthorize("@ss.hasPerm('order:delete')")
|
|
|
+ public Result<?> deleteUsers(
|
|
|
+ @Parameter(description = "订单表ID,多个以英文逗号(,)分割") @PathVariable String ids
|
|
|
+ ) {
|
|
|
+ if(StrUtil.isBlank(ids)) {
|
|
|
+ return Result.failed(ResultCode.PARAM_ERROR, "删除的订单表数据为空");
|
|
|
+ }
|
|
|
+ // 逻辑删除
|
|
|
+ List<Long> idList = Arrays.asList(ids.split(",")).stream()
|
|
|
+ .map(idStr -> Long.parseLong(idStr)).collect(Collectors.toList());
|
|
|
+ boolean result = orderService.removeByIds(idList);
|
|
|
+ return Result.judge(result);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 根据code获取openId,session_key,用于支付
|
|
|
* @param loginVO
|