无关风月
2024-09-03 85c4410b0948799a93f19f345b4ed18c253c89f3
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java
@@ -1,18 +1,26 @@
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.query.GetPartnerList;
import com.ruoyi.chargingPile.api.query.SetPermissionConfiguration;
import com.ruoyi.chargingPile.dto.ResetPassword;
import com.ruoyi.chargingPile.service.IPartnerService;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
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.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
 * @author zhibing.pu
@@ -24,14 +32,18 @@
   
   @Resource
   private IPartnerService partnerService;
   @Resource
   private SysUserClient sysUserClient;
   
   
   
   @ResponseBody
   @GetMapping("/getPartnerList")
   @ApiOperation(value = "获取合作商列表", tags = {"管理后台-合作商列表"})
   public AjaxResult<PageInfo<PartnerListDTO>> getPartnerList(@RequestBody GetPartnerList partnerList){
   @ApiOperation(value = "获取合作商列表", tags = {"管理后台-合作商管理"})
   public AjaxResult<PageInfo<PartnerListDTO>> getPartnerList(GetPartnerList partnerList){
      PageInfo<PartnerListDTO> list = partnerService.getPartnerList(partnerList);
      return AjaxResult.success(list);
   }
@@ -39,7 +51,7 @@
   
   @ResponseBody
   @PostMapping("/addPartner")
   @ApiOperation(value = "添加合作商", tags = {"管理后台-合作商列表"})
   @ApiOperation(value = "添加合作商", tags = {"管理后台-合作商管理"})
   public AjaxResult addPartner(@RequestBody Partner partner){
      return partnerService.addPartner(partner);
   }
@@ -48,7 +60,7 @@
   
   @ResponseBody
   @GetMapping("/getPartner/{id}")
   @ApiOperation(value = "获取合作商详情", tags = {"管理后台-合作商列表"})
   @ApiOperation(value = "获取合作商详情", tags = {"管理后台-合作商管理", "管理后台-充电桩信息"})
   @ApiImplicitParams({
         @ApiImplicitParam(value = "合作商id", name = "id", dataTypeClass = Integer.class, required = true)
   })
@@ -61,7 +73,7 @@
   
   @ResponseBody
   @PostMapping("/editPartner")
   @ApiOperation(value = "编辑合作商", tags = {"管理后台-合作商列表"})
   @ApiOperation(value = "编辑合作商", tags = {"管理后台-合作商管理"})
   public AjaxResult editPartner(@RequestBody Partner partner){
      return partnerService.editPartner(partner);
   }
@@ -69,20 +81,57 @@
   
   
   @ResponseBody
   @DeleteMapping("/delPartner/{id}")
   @ApiOperation(value = "删除合作商", tags = {"管理后台-合作商列表"})
   @DeleteMapping("/delPartner")
   @ApiOperation(value = "删除合作商", tags = {"管理后台-合作商管理"})
   @ApiImplicitParams({
         @ApiImplicitParam(value = "合作商id", name = "id", dataTypeClass = Integer.class, required = true)
   })
   public AjaxResult delPartner(@PathVariable("id") Integer id){
   public AjaxResult delPartner(@RequestParam("id") List<Integer> id){
      return partnerService.delPartner(id);
   }
   
   
   @ResponseBody
   @PostMapping("/resetPassword")
   @ApiOperation(value = "合作商重置密码", tags = {"管理后台-合作商列表"})
   @ApiOperation(value = "合作商重置密码", tags = {"管理后台-合作商管理"})
   public AjaxResult resetPassword(@RequestBody ResetPassword resetPassword){
      return partnerService.resetPassword(resetPassword);
   }
   @ResponseBody
   @GetMapping("/getPartner")
   @ApiOperation(value = "获取所有合作商", tags = {"管理后台-站点管理"})
   public AjaxResult<List<Partner>> getPartner(){
      SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData();
      Integer roleType = sysUser.getRoleType();
      Integer objectId = sysUser.getObjectId();
      LambdaQueryWrapper<Partner> wrapper = new LambdaQueryWrapper<Partner>().eq(Partner::getDelFlag, 0);
      if(2 == roleType){
         wrapper.eq(Partner::getId, objectId);
      }
      List<Partner> list = partnerService.list(wrapper);
      return AjaxResult.success(list);
   }
   @ResponseBody
   @GetMapping("/getPermissionConfiguration/{siteId}")
   @ApiOperation(value = "获取合作商权限设置", tags = {"管理后台-站点管理"})
   public AjaxResult<GetPermissionConfigurationDTO> getPermissionConfiguration(@PathVariable("siteId") Integer siteId, Integer partnerId){
      GetPermissionConfigurationDTO permissionConfiguration = partnerService.getPermissionConfiguration(siteId, partnerId);
      return AjaxResult.success(permissionConfiguration);
   }
   @ResponseBody
   @PostMapping("/setPermissionConfiguration/{siteId}")
   @ApiOperation(value = "设置合作商权限", tags = {"管理后台-站点管理"})
   public AjaxResult setPermissionConfiguration(@RequestBody SetPermissionConfiguration req){
      partnerService.setPermissionConfiguration(req);
      return AjaxResult.success();
   }
}