Bladeren bron

admin接口定义

skyline 2 jaren geleden
bovenliggende
commit
1957cd696d

+ 1 - 0
.gitignore

@@ -31,3 +31,4 @@ build/
 
 ### VS Code ###
 .vscode/
+file_storage/

+ 46 - 0
admin/src/main/java/com/kym/admin/config/StpInterfaceImpl.java

@@ -0,0 +1,46 @@
+package com.kym.admin.config;
+
+import cn.dev33.satoken.stp.StpInterface;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author skyline
+ * @description 权限控制
+ * @date 2023-08-22 18:33
+ */
+//@Component
+public class StpInterfaceImpl implements StpInterface {
+
+
+    /**
+     * 返回一个账号所拥有的权限码集合
+     */
+    @Override
+    public List<String> getPermissionList(Object userId, String loginType) {
+        var permissions = new ArrayList<String>();
+
+        // 根据userId查询登录用户权限
+        permissions.add("101");
+        permissions.add("user.add");
+        permissions.add("user.update");
+        permissions.add("user.get");
+        // list.add("user.delete");
+        permissions.add("art.*");
+        return permissions;
+    }
+
+    /**
+     * 返回一个账号所拥有的角色标识集合 (权限与角色可分开校验)
+     */
+    @Override
+    public List<String> getRoleList(Object loginId, String loginType) {
+        // 本 list 仅做模拟,实际项目中要根据具体业务逻辑来查询角色
+        var roles = new ArrayList<String>();
+        roles.add("admin");
+        roles.add("super-admin");
+        return roles;
+    }
+
+}

+ 66 - 0
admin/src/main/java/com/kym/admin/controller/CustomController.java

@@ -0,0 +1,66 @@
+package com.kym.admin.controller;
+
+import com.kym.common.R;
+import com.kym.common.annotation.SysLog;
+import com.kym.entity.admin.queryParams.CustomChargeOrdersQueryParam;
+import com.kym.entity.admin.queryParams.CommonQueryParam;
+import com.kym.service.miniapp.ChargeOrderService;
+import com.kym.service.miniapp.UserService;
+import com.kym.service.miniapp.WalletDetailService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 用户相关信息
+ *
+ * @author skyline
+ * @since 2023-08-18
+ */
+@RestController
+@RequestMapping("/custom")
+public class CustomController {
+
+    @Autowired
+    private UserService customUserService;
+    @Autowired
+    private ChargeOrderService customChargeOrders;
+    @Autowired
+    private WalletDetailService customWalletDetailService;
+
+    // TODO: 2023-08-18 用户信息列表(基本信息,余额)
+
+
+    @SysLog("查询用户列表")
+    @GetMapping("/listUser")
+    public R listUser(CommonQueryParam params,
+                      @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
+                      @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) {
+        return R.success(customUserService.listCustomUser(params, pageNum, pageSize));
+    }
+
+    @SysLog("查询用户充电订单列表")
+    @GetMapping("/listUserChargeOrders")
+    public R listUserChargeOrders(CustomChargeOrdersQueryParam params,
+                                  @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
+                                  @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) {
+        return R.success(customChargeOrders.customChargeOrders(params, pageNum, pageSize));
+    }
+
+    @SysLog("订单详情")
+    @GetMapping("/orderDetail/{startChargeSeq}")
+    public R orderDetail(@PathVariable("startChargeSeq") String startChargeSeq) {
+        return R.success(customChargeOrders.orderDetail(startChargeSeq));
+    }
+
+    @SysLog("充值记录列表")
+    @GetMapping("/listRecharge")
+    public R listRecharge(CommonQueryParam params,
+                          @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
+                          @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize){
+        return R.success(customWalletDetailService.listRecharge(params,pageNum,pageSize));
+    }
+
+
+
+
+}

+ 0 - 31
admin/src/main/java/com/kym/admin/controller/CustomUserController.java

@@ -1,31 +0,0 @@
-package com.kym.admin.controller;
-
-import com.alibaba.fastjson2.JSONObject;
-import com.kym.common.R;
-import com.kym.service.admin.AdminUserService;
-import com.kym.service.miniapp.UserService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 客户用户表 前端控制器
- * </p>
- *
- * @author skyline
- * @since 2023-08-18
- */
-@RestController
-@RequestMapping("/custom-user")
-public class CustomUserController {
-
-    @Autowired
-    private UserService customUserService;
-
-    // TODO: 2023-08-18 用户信息列表(基本信息,余额)
-    
-
-}

+ 26 - 0
entity/src/main/java/com/kym/entity/admin/queryParams/CommonQueryParam.java

@@ -0,0 +1,26 @@
+package com.kym.entity.admin.queryParams;
+
+import lombok.Data;
+
+/**
+ * @author skyline
+ * @description 用户查询参数
+ * @date 2023-08-22 18:56
+ */
+@Data
+public class CommonQueryParam {
+    /**
+     * 手机号
+     */
+    private String mobilePhone;
+    /**
+     * 用户名
+     */
+    private String username;
+    /**
+     * 车牌号
+     */
+    //private String plateNo;
+
+
+}

+ 52 - 0
entity/src/main/java/com/kym/entity/admin/queryParams/CustomChargeOrdersQueryParam.java

@@ -0,0 +1,52 @@
+package com.kym.entity.admin.queryParams;
+
+import lombok.Data;
+
+import java.time.LocalDate;
+
+/**
+ * @author skyline
+ * @description 用户订单查询参数
+ * @date 2023-08-22 18:56
+ */
+@Data
+public class CustomChargeOrdersQueryParam {
+    /**
+     * 用户id
+     */
+    private Long userId;
+    /**
+     * 充电订单号
+     */
+    private String startChargeNo;
+    /**
+     * 手机号
+     */
+    private String mobilePhone;
+    /**
+     * 用户名
+     */
+    private String username;
+    /**
+     * 充电桩序列号
+     */
+    private String connectorId;
+    /**
+     * 订单状态
+     */
+    private Integer orderStatus;
+    /**
+     * 支付状态
+     */
+    private Integer payStatus;
+    /**
+     * 查询开始日期
+     */
+    private LocalDate startDate;
+    /**
+     * 查询结束日期
+     */
+    private LocalDate endDate;
+
+
+}

+ 6 - 0
service/src/main/java/com/kym/service/miniapp/ChargeOrderService.java

@@ -1,5 +1,7 @@
 package com.kym.service.miniapp;
 
+import com.github.pagehelper.PageInfo;
+import com.kym.entity.admin.queryParams.CustomChargeOrdersQueryParam;
 import com.kym.entity.miniapp.ChargeOrder;
 import com.baomidou.mybatisplus.extension.service.IService;
 
@@ -16,4 +18,8 @@ public interface ChargeOrderService extends IService<ChargeOrder> {
     ChargeOrder getChargingOrderByUserId(Long userId);
 
     ChargeOrder getChargingOrderByStartChargeSeq(String startChargeSeq);
+
+    PageInfo<ChargeOrder> customChargeOrders(CustomChargeOrdersQueryParam params, Integer pageNum, Integer pageSize);
+
+    Object orderDetail(String startChargeSeq);
 }

+ 3 - 0
service/src/main/java/com/kym/service/miniapp/UserService.java

@@ -3,6 +3,7 @@ package com.kym.service.miniapp;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.github.pagehelper.PageInfo;
 import com.kym.common.R;
+import com.kym.entity.admin.queryParams.CommonQueryParam;
 import com.kym.entity.miniapp.User;
 import com.kym.entity.miniapp.params.WxLoginParams;
 import com.kym.entity.miniapp.vo.UserVo;
@@ -28,4 +29,6 @@ public interface UserService extends IService<User> {
     PageInfo<UserVo> listUserVo(Integer pageNum, Integer pageSize);
 
     R wxlogin(WxLoginParams params);
+
+    PageInfo<UserVo> listCustomUser(CommonQueryParam params, Integer pageNum, Integer pageSize);
 }

+ 3 - 0
service/src/main/java/com/kym/service/miniapp/WalletDetailService.java

@@ -1,5 +1,6 @@
 package com.kym.service.miniapp;
 
+import com.kym.entity.admin.queryParams.CommonQueryParam;
 import com.kym.entity.miniapp.WalletDetail;
 import com.baomidou.mybatisplus.extension.service.IService;
 
@@ -18,4 +19,6 @@ public interface WalletDetailService extends IService<WalletDetail> {
     WalletDetail getWalletDetailByOrderNo(String orderNo);
 
     List<WalletDetail> listWalletDetail(int type);
+
+    Object listRecharge(CommonQueryParam params, Integer pageNum, Integer pageSize);
 }

+ 24 - 3
service/src/main/java/com/kym/service/miniapp/impl/ChargeOrderServiceImpl.java

@@ -1,10 +1,13 @@
 package com.kym.service.miniapp.impl;
 
 import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.kym.entity.admin.queryParams.CustomChargeOrdersQueryParam;
 import com.kym.entity.miniapp.ChargeOrder;
 import com.kym.mapper.miniapp.ChargeOrderMapper;
 import com.kym.service.miniapp.ChargeOrderService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
 /**
@@ -20,11 +23,29 @@ import org.springframework.stereotype.Service;
 public class ChargeOrderServiceImpl extends ServiceImpl<ChargeOrderMapper, ChargeOrder> implements ChargeOrderService {
     @Override
     public ChargeOrder getChargingOrderByUserId(Long userId) {
-        return lambdaQuery().eq(ChargeOrder::getUserId,userId).eq(ChargeOrder::getChargeStatus,2).one();
+        return lambdaQuery().eq(ChargeOrder::getUserId, userId).eq(ChargeOrder::getChargeStatus, 2).one();
     }
+
     @Override
     public ChargeOrder getChargingOrderByStartChargeSeq(String startChargeSeq) {
-        return lambdaQuery().eq(ChargeOrder::getStartChargeSeq,startChargeSeq).one();
+        return lambdaQuery().eq(ChargeOrder::getStartChargeSeq, startChargeSeq).one();
+    }
+
+    @Override
+    public PageInfo<ChargeOrder> customChargeOrders(CustomChargeOrdersQueryParam params, Integer pageNum, Integer pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        // TODO: 2023-08-22 查询订单列表(订单编号,手机号,充电站,充电桩SN/短码,订单状态,建单时间,结算时间,充电电量,实付金额,付款状态)
+        return null;
+    }
+
+    @Override
+    public Object orderDetail(String startChargeSeq) {
+        // TODO: 2023-08-22 订单详情(基本信息、收费信息)
+        /*
+         * 基本信息:订单编号,订单状态,所属用户,所属电站,充电桩序列号,建单时间,结算时间,桩启动充电时间,桩停止充电时间
+         * 收费详情:充电电量,充电电费,服务费,总费用,支付状态
+         */
+        return null;
     }
 
 

+ 17 - 0
service/src/main/java/com/kym/service/miniapp/impl/UserServiceImpl.java

@@ -12,6 +12,7 @@ import com.kym.common.constant.ResponseEnum;
 import com.kym.common.enums.WxApi;
 import com.kym.common.exception.BusinessException;
 import com.kym.common.utils.HttpUtil;
+import com.kym.entity.admin.queryParams.CommonQueryParam;
 import com.kym.entity.miniapp.Account;
 import com.kym.entity.miniapp.Cars;
 import com.kym.entity.miniapp.User;
@@ -202,4 +203,20 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
     }
 
 
+    /**
+     * 分页查询用户列表
+     *
+     * @param params
+     * @param pageNum
+     * @param pageSize
+     * @return
+     */
+    @Override
+    public PageInfo<UserVo> listCustomUser(CommonQueryParam params, Integer pageNum, Integer pageSize) {
+        // TODO: 2023-08-22 查询用户信息列表(id,手机号,用户名,昵称,状态,注册时间,最近登录时间,充值次数,充值总金额,充电次数,总充电电量,总充电金额)
+        PageHelper.startPage(pageNum, pageSize);
+        return null;
+    }
+
+
 }

+ 9 - 0
service/src/main/java/com/kym/service/miniapp/impl/WalletDetailServiceImpl.java

@@ -3,6 +3,8 @@ package com.kym.service.miniapp.impl;
 import cn.dev33.satoken.stp.StpUtil;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.PageHelper;
+import com.kym.entity.admin.queryParams.CommonQueryParam;
 import com.kym.entity.miniapp.WalletDetail;
 import com.kym.mapper.miniapp.WalletDetailMapper;
 import com.kym.service.miniapp.WalletDetailService;
@@ -40,4 +42,11 @@ public class WalletDetailServiceImpl extends ServiceImpl<WalletDetailMapper, Wal
 
     }
 
+    @Override
+    public Object listRecharge(CommonQueryParam params, Integer pageNum, Integer pageSize) {
+        PageHelper.startPage(pageNum,pageSize);
+        // TODO: 2023-08-22 充值记录(交易单号,用户,充值金额,充值方式,第三方充值编号,充值时间) 
+        return null;
+    }
+
 }