From 74b0e0814e37d640596f44ec86d20fa9ecce9ed6 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 05 二月 2025 10:42:06 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java | 326 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 320 insertions(+), 6 deletions(-) diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java index 8494f33..1c514cd 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java @@ -1,29 +1,37 @@ package com.ruoyi.chargingPile.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.ruoyi.chargingPile.api.dto.GetPermissionConfigurationDTO; import com.ruoyi.chargingPile.api.dto.PartnerListDTO; import com.ruoyi.chargingPile.api.model.Partner; +import com.ruoyi.chargingPile.api.model.TPartnerSite; +import com.ruoyi.chargingPile.api.model.TSiteMenu; import com.ruoyi.chargingPile.api.query.GetPartnerList; import com.ruoyi.chargingPile.api.query.SetPermissionConfiguration; -import com.ruoyi.chargingPile.domain.SiteMenu; +import com.ruoyi.chargingPile.api.domain.SiteMenu; import com.ruoyi.chargingPile.dto.ResetPassword; import com.ruoyi.chargingPile.service.IPartnerService; +import com.ruoyi.chargingPile.service.TPartnerSiteService; +import com.ruoyi.chargingPile.service.TSiteMenuService; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.service.TokenService; +import com.ruoyi.common.security.annotation.Logical; +import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.feignClient.SysUserClient; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; import java.util.Set; @@ -40,11 +48,15 @@ @Resource private SysUserClient sysUserClient; - + @Resource + private TSiteMenuService siteMenuService; + @Resource + private TPartnerSiteService partnerSiteService; + @RequiresPermissions(value = {"/balanceSheetRecord", "/partners", "/chargingPile/add", "/chargingPile/select", "/chargingPile/update"}, logical = Logical.OR) @ResponseBody @GetMapping("/getPartnerList") @ApiOperation(value = "获取合作商列表", tags = {"管理后台-合作商管理"}) @@ -54,6 +66,8 @@ } + + @RequiresPermissions(value = {"/partners/add"}, logical = Logical.OR) @ResponseBody @PostMapping("/addPartner") @ApiOperation(value = "添加合作商", tags = {"管理后台-合作商管理"}) @@ -64,6 +78,7 @@ + @RequiresPermissions(value = {"/partners/seleete", "/partners/update"}, logical = Logical.OR) @ResponseBody @GetMapping("/getPartner/{id}") @ApiOperation(value = "获取合作商详情", tags = {"管理后台-合作商管理", "管理后台-充电桩信息"}) @@ -74,6 +89,9 @@ Partner partner = partnerService.getPartner(id); return AjaxResult.success(partner); } + + + @ResponseBody @GetMapping("/getPartnerR/{id}") public R<Partner> getPartnerR(@PathVariable("id") Integer id){ @@ -83,6 +101,7 @@ + @RequiresPermissions(value = {"/partners/update"}, logical = Logical.OR) @ResponseBody @PostMapping("/editPartner") @ApiOperation(value = "编辑合作商", tags = {"管理后台-合作商管理"}) @@ -93,6 +112,7 @@ + @RequiresPermissions(value = {"/partners/del"}, logical = Logical.OR) @ResponseBody @DeleteMapping("/delPartner") @ApiOperation(value = "删除合作商", tags = {"管理后台-合作商管理"}) @@ -105,6 +125,7 @@ } + @RequiresPermissions(value = {"/partners/resetPassword"}, logical = Logical.OR) @ResponseBody @PostMapping("/resetPassword") @ApiOperation(value = "合作商重置密码", tags = {"管理后台-合作商管理"}) @@ -113,12 +134,16 @@ return partnerService.resetPassword(resetPassword); } - + @Autowired +private TokenService tokenService; + + + @RequiresPermissions(value = {"/site/add", "/site/update"}, logical = Logical.OR) @ResponseBody @GetMapping("/getPartner") @ApiOperation(value = "获取所有合作商", tags = {"管理后台-站点管理"}) public AjaxResult<List<Partner>> getPartner(){ - SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData(); + SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData(); Integer roleType = sysUser.getRoleType(); Integer objectId = sysUser.getObjectId(); LambdaQueryWrapper<Partner> wrapper = new LambdaQueryWrapper<Partner>().eq(Partner::getDelFlag, 0); @@ -131,6 +156,8 @@ + + @RequiresPermissions(value = {"/site/partner_authority"}, logical = Logical.OR) @ResponseBody @GetMapping("/getPermissionConfiguration/{siteId}") @ApiOperation(value = "获取合作商权限设置", tags = {"管理后台-站点管理"}) @@ -140,6 +167,7 @@ } + @RequiresPermissions(value = {"/site/partner_authority"}, logical = Logical.OR) @ResponseBody @PostMapping("/setPermissionConfiguration/{siteId}") @ApiOperation(value = "设置合作商权限", tags = {"管理后台-站点管理"}) @@ -169,7 +197,293 @@ */ @PostMapping("/authSite/{partnerId}") public R<Set<Integer>> authSite(@PathVariable("partnerId") Integer partnerId, @RequestParam("siteMenu") String siteMenu){ - Set<Integer> integers = partnerService.authSite(partnerId, SiteMenu.valueOf(siteMenu)); + Set<Integer> integers = partnerService.authSite(partnerId, SiteMenu.getSiteMenu(siteMenu)); return R.ok(integers); } + + /** + * 判断合作商权限 + * @param partnerId + * @param siteId + * @param siteMenu + * @return + */ + @PostMapping("/authMenu/{partnerId}") + public Boolean authMenu(@PathVariable("partnerId") Integer partnerId, @RequestParam("siteId") Integer siteId, @RequestParam("siteMenu") String siteMenu){ + return partnerService.authMenu(partnerId, siteId, SiteMenu.getSiteMenu(siteMenu)); + } + // 充电算帐单按钮权限 + @PostMapping("/getChargingBillMenu/{partnerId}/{siteId}") + R<List<Boolean>> getChargingBillMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charge_bill_order/download").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charge_bill_order").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + List<Boolean> booleans = new ArrayList<>(); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 充电时段统计按钮权限 + @PostMapping("/getChargingListMenu/{partnerId}/{siteId}") + R<List<Boolean>> getChargingListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_period_statistics/order_info").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_period_statistics/charging_curve").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu three = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_period_statistics").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite2 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, three.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite2!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 账户结算帐单按钮权限 + @PostMapping("/getAccountMenu/{partnerId}/{siteId}") + R<List<Boolean>> getAccountMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/account_settlement/download").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/account_settlement").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + List<Boolean> booleans = new ArrayList<>(); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 结算表记录按钮权限 + @PostMapping("/getSettlementListMenu/{partnerId}/{siteId}") + R<List<Boolean>> getSettlementListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/balance_sheet_record/download").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/balance_sheet_record/del").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu three = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/balance_sheet_record").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite2 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, three.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite2!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 充电桩订单按钮权限 + @PostMapping("/getChargingOrderMenu/{partnerId}/{siteId}") + R<List<Boolean>> getChargingOrderMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_pile_order/record").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_pile_order").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + List<Boolean> booleans = new ArrayList<>(); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 订单申诉按钮权限 + @PostMapping("/managePageListMenu/{partnerId}/{siteId}") + R<List<Boolean>> managePageListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/order_appeal/view").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/order_appeal/handle").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu three = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/order_appeal").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite2 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, three.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite2!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 停车记录按钮权限 + @PostMapping("/parkingRecordListMenu/{partnerId}/{siteId}") + R<List<Boolean>> parkingRecordListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/parking_record/view").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/parking_record/exit_parking_lot").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu three = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/parking_record").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite2 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, three.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite2!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 充电监控记录按钮权限 + @PostMapping("/watchChargingOrder/{partnerId}/{siteId}") + R<List<Boolean>> watchChargingOrder(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_pile_order/monitoring_record/info").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_pile_order/monitoring_record/del").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu three = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_pile_order/monitoring_record").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite2 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, three.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite2!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 充电评价数据权限 + @PostMapping("/chargeEvaluation/{partnerId}/{siteId}") + R<List<Boolean>> chargeEvaluation(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charge_evaluation").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } } -- Gitblit v1.7.1