2021与蓝度共同重构项目,服务端
liuhaonan
2022-09-07 20e4636014540c4c27b0d2d337927eed8593d93a
changes
已修改7个文件
53 ■■■■■ 文件已修改
dao/src/main/java/com/sandu/ximon/dao/enums/MenuEnum.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/resources/mapper/LightMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mChargingChargeController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/MenuService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dao/src/main/java/com/sandu/ximon/dao/enums/MenuEnum.java
@@ -205,6 +205,10 @@
    BASE_DEVICE_04("baseDevice04"),
    BASE_DEVICE_05("baseDevice05"),
    C3_REFUND("充电桩退款"),
    CHARGE_UPDATE("编辑费率"),
    ORDER_LIST("订单列表"),
    ;
dao/src/main/resources/mapper/LightMapper.xml
@@ -42,7 +42,8 @@
        t3.light_address AS light_address
        FROM
        light t1
        LEFT JOIN pole t2 USING ( device_code )
        LEFT JOIN pole_binding t5 USING ( device_code )
        LEFT JOIN pole t2 ON t2.id=t5.pole_id
        LEFT JOIN light_task_pole_relation t3 ON t3.pole_id = t2.id
        LEFT JOIN light_task t4 ON t3.task_id = t4.task_id
        <where>
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mChargingChargeController.java
@@ -3,8 +3,10 @@
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.util.ResponseUtil;
import com.sandu.ximon.admin.security.PermissionConfig;
import com.sandu.ximon.admin.service.C3mChargingChargeService;
import com.sandu.ximon.dao.domain.C3mChargingCharge;
import com.sandu.ximon.dao.enums.MenuEnum;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
@@ -22,6 +24,7 @@
public class C3mChargingChargeController {
    private final C3mChargingChargeService chargeService;
    private final PermissionConfig permissionConfig;
    /**
     * 编辑充电桩费率
@@ -31,6 +34,9 @@
     */
    @PostMapping("/updateC3mCharging")
    public ResponseVO<Object> updateC3mCharging(@RequestBody List<C3mChargingCharge> chargeEntities) {
        if (!permissionConfig.check(MenuEnum.CHARGE_UPDATE.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        if (chargeEntities.size() > 5) {
            throw new BusinessException("当前最高仅支持4组费率");
        }
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/C3mOrderController.java
@@ -9,13 +9,13 @@
import com.sandu.ximon.admin.param.PayParam;
import com.sandu.ximon.admin.pay.alipay.UsrAlipayConfigService;
import com.sandu.ximon.admin.pay.wx.WxFastPayService;
import com.sandu.ximon.admin.security.PermissionConfig;
import com.sandu.ximon.admin.service.C3ChargingService;
import com.sandu.ximon.admin.service.C3mChargingChargeService;
import com.sandu.ximon.admin.service.C3mOrderService;
import com.sandu.ximon.admin.utils.AliPayUtils;
import com.sandu.ximon.dao.domain.C3mCharging;
import com.sandu.ximon.dao.domain.C3mOrder;
import com.sandu.ximon.dao.enums.OrderType;
import com.sandu.ximon.dao.enums.MenuEnum;
import lombok.AllArgsConstructor;
import me.chanjar.weixin.common.error.WxErrorException;
import org.springframework.web.bind.annotation.*;
@@ -38,6 +38,7 @@
    private final UsrAlipayConfigService alipayConfigService;
    private final WxFastPayService wxPayService;
    private final C3mChargingChargeService c3mChargingChargeService;
    private final PermissionConfig permissionConfig;
    /**
@@ -47,6 +48,9 @@
     */
    @PostMapping("/refund")
    public ResponseVO<Object> refund(@RequestBody PayParam params) {
        if (!permissionConfig.check(MenuEnum.C3_REFUND.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        if (params.getOutTradeNo().isEmpty() || params.getOutTradeNo() == null) {
            throw new BusinessException("退款参数不能为空");
        }
@@ -85,10 +89,9 @@
        String s = WxFastPayService.parseWxAmount(c3mOrderEntity.getTotalAmount().toString());
        //生成微信预付订单
        SortedMap<Object, Object> result = wxPayService.miniAppPay(request,"扫码充电支付(C3充电桩)", c3mOrderEntity.getOutTradeNo(), Integer.valueOf(s), param.getPoleId(), param.getOpenId());
        SortedMap<Object, Object> result = wxPayService.miniAppPay(request, "扫码充电支付(C3充电桩)", c3mOrderEntity.getOutTradeNo(), Integer.valueOf(s), param.getPoleId(), param.getOpenId());
        return ResponseUtil.success(result);
    }
    /**
@@ -105,6 +108,9 @@
                                   @RequestParam(value = "keyword", required = false) String keyword,
                                   @RequestParam(value = "orderStatus", required = false) Integer orderStatus,
                                   @RequestParam(value = "timeType", required = false) Integer timeType) {
        if (!permissionConfig.check(MenuEnum.ORDER_LIST.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        return ResponseUtil.successPage(c3mOrderService.orderList(baseConditionVO, keyword, orderStatus, timeType));
    }
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/XiXunController.java
@@ -488,15 +488,15 @@
    /**
     * 关闭天气推送
     */
    @GetMapping("/closeWeatherPush/{id}")
    public ResponseVO<Object> closeWeatherPush(@PathVariable Long id) {
    @GetMapping("/closeWeatherPush/{poleId}")
    public ResponseVO<Object> closeWeatherPush(@PathVariable Long poleId) {
        if (!permissionConfig.check(MenuEnum.XIXUN_CLOSE_AIR.getCode())) {
            return ResponseUtil.fail("缺少对应用户权限");
        }
        if (id == null) {
            throw new BusinessException("未选择LED屏");
        if (poleId == null) {
            throw new BusinessException("灯杆id不能为空!");
        }
        SpringContextHolder.getBean(PoleService.class).closeXiXunAirPush(id);
        SpringContextHolder.getBean(PoleService.class).closeXiXunAirPush(poleId);
        return ResponseUtil.success("关闭成功");
    }
ximon-admin/src/main/java/com/sandu/ximon/admin/service/MenuService.java
@@ -1,30 +1,24 @@
package com.sandu.ximon.admin.service;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sandu.common.enums.RoleLevelStatus;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.execption.EntityExistException;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.common.util.SpringContextHolder;
import com.sandu.ximon.admin.param.MenuParam;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.dao.bo.MenuNode;
import com.sandu.ximon.dao.domain.AdminRoleRelation;
import com.sandu.ximon.dao.domain.Menu;
import com.sandu.ximon.dao.domain.Role;
import com.sandu.ximon.dao.domain.RoleMenuRelation;
import com.sandu.ximon.dao.mapper.AdminRoleRelationMapper;
import com.sandu.ximon.dao.mapper.MenuMapper;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
@@ -74,6 +68,10 @@
            throw new BusinessException("找不到菜单信息");
        }
        if (one.getPid() == 0 && param.getPid() != 0) {
            throw new BusinessException("目录已是最顶层菜单,无法设置上级目录 !");
        }
        List<Role> roles = SpringContextHolder.getBean(RoleService.class).listByAdminId(SecurityUtils.getUserId());
        Integer roleLevel = roles.stream().map(Role::getLevel).min(Integer::compareTo).orElse(RoleLevelStatus.COMMON.getCode());
        if (!RoleLevelStatus.SUPER.getCode().equals(roleLevel)) {
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -902,8 +902,10 @@
            throw new BusinessException("设备不存在");
        }
        //关闭推送
        SpringContextHolder.getBean(LightemitUtils.class).clear(xixun.getDeviceCode());
        String clear = SpringContextHolder.getBean(LightemitUtils.class).clear(xixun.getDeviceCode());
        if (clear.contains("is not") || clear.contains("does not")) {
            throw new BusinessException("设备不在线或设备未存在于服务器");
        }
    }
    /**