From 49cc211213ce71bd6e5bb8eeeffbda46c0bf98d8 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期五, 07 六月 2024 11:34:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java |   90 +++++++++++++++++++++++++++++++++++++--------
 1 files changed, 74 insertions(+), 16 deletions(-)

diff --git a/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java b/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java
index 73bb8e9..e7797f6 100644
--- a/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java
+++ b/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java
@@ -1,37 +1,95 @@
 package com.yuanchu.mom.controller;
 
-import cn.hutool.http.HttpRequest;
-import cn.hutool.http.HttpResponse;
-import cn.hutool.http.HttpUtil;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.yuanchu.mom.annotation.ValueAuth;
-import com.yuanchu.mom.pojo.AuthApi;
+import com.yuanchu.mom.annotation.ValueClassify;
+import com.yuanchu.mom.common.GetLook;
+import com.yuanchu.mom.dto.PersonDto;
+import com.yuanchu.mom.exception.ErrorException;
+import com.yuanchu.mom.mapper.PowerMapper;
+import com.yuanchu.mom.mapper.UserMapper;
 import com.yuanchu.mom.pojo.Company;
+import com.yuanchu.mom.pojo.Person;
+import com.yuanchu.mom.pojo.Power;
+import com.yuanchu.mom.pojo.User;
+import com.yuanchu.mom.service.UserService;
 import com.yuanchu.mom.util.HeaderToken;
 import com.yuanchu.mom.vo.Result;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.Authorization;
 import lombok.AllArgsConstructor;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.List;
 
 @RestController
 @AllArgsConstructor
 @RequestMapping("/companies")
-@Api("缁勭粐妯″潡")
+@Api(tags="鐢ㄦ埛妯″潡")
 public class CompaniesController {
 
-    @Autowired
     private HeaderToken headerToken;
 
-    @ValueAuth
-    @ApiOperation(value = "鑾峰彇缁勭粐鍒楄〃")
-    @GetMapping(value = "/selectCompaniesList")
-    public Result<List<Company>> selectcompaniesList(){
-        return Result.success(headerToken.companyUrl());
+    private UserService userService;
+
+    UserMapper userMapper;
+
+    PowerMapper powerMapper;
+
+    private GetLook getLook;
+
+    @ValueClassify("鐢ㄦ埛绠$悊")
+    @PostMapping("/getSampleUser")
+    @ApiOperation(value = "鏌ョ湅鎸囧畾閮ㄩ棬鐨勪汉浜嬬郴缁熺粍缁囨灦鏋�")
+    public Result<?> getSampleUser(){
+        return Result.success();
     }
+
+    @ValueClassify("鐢ㄦ埛绠$悊")
+    @ApiOperation(value = "鏌ョ湅浜轰簨绯荤粺缁勭粐鏋舵瀯")
+    @GetMapping(value = "/selectCompaniesList")
+    public Result<List<Company>> selectCompaniesList() {
+        //鍒ゆ柇鏄惁鏈夌洿鎺ヨ幏鍙栫涓夋柟閮ㄩ棬鐨勬潈闄�
+        Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId");
+        User user = userMapper.selectById(userId);
+        Integer roleId = user.getRoleId();
+        Power power = powerMapper.selectOne(Wrappers.<Power>lambdaQuery().eq(Power::getRoleId, roleId).eq(Power::getMenuMethod, "getSampleUser"));
+        if (ObjectUtils.isNotEmpty(power)){
+            List<Company> companies = new ArrayList<>();
+            Company company = new Company();
+            if (ObjectUtils.isEmpty(user.getCompanyId())){
+                throw new ErrorException("璇ョ敤鎴锋病鏈夋墍灞炲崟浣�!");
+            }
+            company.setCompanyId(user.getCompanyId());
+            companies.add(company);
+            return Result.success(companies);
+        }else {
+            return Result.success(headerToken.companyUrl());
+        }
+    }
+
+    @ValueAuth
+    @ApiOperation("鑾峰彇浜轰簨绯荤粺缁勭粐涓嬬殑浜哄憳")
+    @PostMapping(value = "/selectSimpleList")
+    public Result<?> selectSimpleList(String companyId) {
+        return Result.success(headerToken.userUrl(companyId));
+    }
+
+    @ValueAuth
+    @ApiOperation("灏嗕汉浜嬬郴缁熷嬀閫夌殑鍐呭杞Щ鍒版湰绯荤粺")
+    @PostMapping(value = "/addPersonUser")
+    public Result<?> addPersonUser(@RequestBody PersonDto personDto) {
+        return Result.success(userService.addPersonUser(personDto));
+    }
+
+    @ValueAuth
+    @ApiOperation("閫氳繃鍛樺伐鍙疯幏鍙栧憳宸�")
+    @PostMapping(value = "/selectPersonUser")
+    public Result<?> selectPersonUser(String code) {
+        Person person = headerToken.selectPersonUser(code);
+        return Result.success(person);
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.9.3