浏览代码

修改权限问题

yumeng 3 年之前
父节点
当前提交
9539fb5bff

+ 1 - 0
jeecg-boot-module-system/src/main/java/cn/com/ctop/common/module/entity/Product.java

@@ -55,6 +55,7 @@ public class Product {
 
     @Dict(dicCode = "id", dictTable = "sys_category", dicText = "name")
     private String industryId;
+    private String companyId;
     /**
      * 1正常0删除
      */

+ 14 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/AdvertiserController.java

@@ -115,12 +115,26 @@ public class AdvertiserController {
                                                    @RequestParam(name = "pageSize", defaultValue = "1000") Integer pageSize,
                                                    HttpServletRequest req) {
         Result<IPage<Advertiser>> result = new Result<>();
+        String userId = advertiser.getUserId();
+        advertiser.setUserId(null);
+        String roleCode = sysRoleService.getRoleCodeByUserId(userId);
+
+
         String name = advertiser.getName();
         advertiser.setName(null);
         QueryWrapper<Advertiser> queryWrapper = QueryGenerator.initQueryWrapper(advertiser, req.getParameterMap());
         if (!Check.isNull(name)) {
             queryWrapper.like("name", name);
         }
+        if (!"admin".equals(roleCode)) {
+            QueryWrapper<UserCompany> userCompanyQueryWrapper = new QueryWrapper<>();
+            userCompanyQueryWrapper.eq("user_id", userId);
+            userCompanyQueryWrapper.orderByDesc("create_time");
+            userCompanyQueryWrapper.last("limit 1");
+            UserCompany userCompany = userCompanyMapper.selectOne(userCompanyQueryWrapper);
+            queryWrapper.eq("company_id", userCompany.getCompanyId());
+        }
+
         Page<Advertiser> page = new Page<>(pageNo, pageSize);
         IPage<Advertiser> pageList = advertiserService.page(page, queryWrapper);
         result.setSuccess(true);

+ 37 - 5
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/ProductController.java

@@ -2,7 +2,9 @@ package org.jeecg.modules.ctop.controller;
 
 import cn.com.ctop.common.module.entity.Product;
 import cn.com.ctop.common.module.entity.Project;
+import cn.com.ctop.common.module.entity.UserCompany;
 import cn.com.ctop.common.module.mapper.ProjectMapper;
+import cn.com.ctop.common.module.mapper.UserCompanyMapper;
 import cn.com.ctop.common.module.service.IProductService;
 import cn.com.ctop.common.module.service.ISysRoleExtService;
 import cn.com.ctop.common.module.service.IUserAllocationService;
@@ -28,6 +30,7 @@ import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
 import org.springframework.web.servlet.ModelAndView;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
@@ -54,6 +57,9 @@ public class ProductController {
     private IProductService productService;
     @Autowired
     private ISysRoleExtService sysRoleService;
+    @Resource
+    private UserCompanyMapper userCompanyMapper;
+
     /**
      * 分页列表查询
      *
@@ -72,10 +78,23 @@ public class ProductController {
         Result<IPage<Product>> result = new Result<>();
         String productName = product.getProductName();
         product.setProductName(null);
+        String userId = product.getUserId();
+        product.setUserId(null);
+
         QueryWrapper<Product> queryWrapper = QueryGenerator.initQueryWrapper(product, req.getParameterMap());
         if (!Check.isNull(productName)) {
             queryWrapper.like("product_name", productName);
         }
+
+        String roleCode = sysRoleService.getRoleCodeByUserId(userId);
+        if (!"admin".equals(roleCode)) {
+            QueryWrapper<UserCompany> userCompanyQueryWrapper = new QueryWrapper<>();
+            userCompanyQueryWrapper.eq("user_id", userId);
+            userCompanyQueryWrapper.orderByDesc("create_time");
+            userCompanyQueryWrapper.last("limit 1");
+            UserCompany userCompany = userCompanyMapper.selectOne(userCompanyQueryWrapper);
+            queryWrapper.eq("company_id", userCompany.getCompanyId());
+        }
         Page<Product> page = new Page<>(pageNo, pageSize);
         IPage<Product> pageList = productService.page(page, queryWrapper);
         result.setSuccess(true);
@@ -97,10 +116,10 @@ public class ProductController {
     }
 
     @GetMapping(value = "/getUserProductList")
-    public Result<IPage<Product>> getUserProductList(String userId,String productName,
-                                                          @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
-                                                          @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
-                                                          HttpServletRequest req) {
+    public Result<IPage<Product>> getUserProductList(String userId, String productName,
+                                                     @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                     @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                     HttpServletRequest req) {
         Result<IPage<Product>> result = new Result<>();
         if (Check.isNull(userId)) {
             result.setSuccess(false);
@@ -112,7 +131,7 @@ public class ProductController {
             userId = null;
         }
         Page<Product> page = new Page<>(pageNo, pageSize);
-        IPage<Product> pageList = productService.getUserProductList(page,userId,productName);
+        IPage<Product> pageList = productService.getUserProductList(page, userId, productName);
         result.setSuccess(true);
         result.setResult(pageList);
         return result;
@@ -129,6 +148,19 @@ public class ProductController {
     public Result<Product> add(@RequestBody Product product) {
         Result<Product> result = new Result<>();
         try {
+
+            String userId = product.getUserId();
+            if (!Check.isNull(userId)) {
+                QueryWrapper<UserCompany> userCompanyQueryWrapper = new QueryWrapper<>();
+                userCompanyQueryWrapper.eq("user_id", userId);
+                userCompanyQueryWrapper.orderByDesc("create_time");
+                userCompanyQueryWrapper.last("limit 1");
+                UserCompany userCompany = userCompanyMapper.selectOne(userCompanyQueryWrapper);
+                if (!Check.isNull(userCompany)) {
+                    product.setCompanyId(userCompany.getCompanyId());
+
+                }
+            }
             productService.save(product);
             result.success("添加成功!");
         } catch (Exception e) {

+ 12 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/ProjectController.java

@@ -4,7 +4,9 @@ import cn.com.ctop.common.module.constant.CtopRoleCodeConstant;
 import cn.com.ctop.common.module.entity.Advertiser;
 import cn.com.ctop.common.module.entity.MaterialInfo;
 import cn.com.ctop.common.module.entity.Project;
+import cn.com.ctop.common.module.entity.UserCompany;
 import cn.com.ctop.common.module.mapper.ProjectMapper;
+import cn.com.ctop.common.module.mapper.UserCompanyMapper;
 import cn.com.ctop.common.module.service.*;
 import cn.com.ctop.common.module.utils.Check;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -27,6 +29,7 @@ import org.jeecg.modules.ctop.service.ITransferAccountService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.util.*;
 
@@ -60,6 +63,8 @@ public class ProjectController {
     private ISysRoleExtService sysRoleService;
     @Autowired
     private IMaterialInfoService materialInfoService;
+    @Resource
+    private UserCompanyMapper userCompanyMapper;
 
 
     @ApiOperation(value = "项目-分页列表查询", notes = "项目-分页列表查询")
@@ -260,16 +265,21 @@ public class ProjectController {
 
         } else if ("plane".equals(roleCode) || "plan".equals(roleCode) || "shot".equals(roleCode) || "clip".equals(roleCode) || "designTeamLeader".equals(roleCode) || "planeLeader".equals(roleCode)) {
             queryWrapper.eq("design_responsible_id", sysUser.getId());
+        } else if (roleCode.contains("sale")) {
+            QueryWrapper<UserCompany> userCompanyQueryWrapper = new QueryWrapper<>();
+            userCompanyQueryWrapper.eq("user_id", sysUser.getId());
+            userCompanyQueryWrapper.orderByDesc("create_time");
+            userCompanyQueryWrapper.last("limit 1");
+            UserCompany userCompany = userCompanyMapper.selectOne(userCompanyQueryWrapper);
+            queryWrapper.eq("company_id", userCompany.getCompanyId());
         }
         if (!Check.isNull(projectName)) {
             queryWrapper.like("project_name", projectName);
         }
-
         //媒体类型 1、3 头条   2、4 快手
         if (!Check.isNull(project.getMediaId())) {
             queryWrapper.in("media_id", Arrays.asList(project.getMediaId().split(",")));
         }
-
         queryWrapper.orderByDesc("create_time");
         IPage<Project> pageList = projectService.page(page, queryWrapper);
         List<Project> records = pageList.getRecords();