liujh пре 3 година
родитељ
комит
0f6daa8af0

+ 5 - 6
zd-api/zd-api-system/src/main/java/com/zd/system/api/RemoteDeptService.java

@@ -6,14 +6,9 @@ import com.zd.common.core.web.domain.AjaxResult;
 import com.zd.system.api.domain.SysDept;
 import com.zd.system.api.factory.RemoteDeptFallbackFactory;
 import io.swagger.annotations.ApiOperation;
-import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.*;
 
-import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
@@ -40,4 +35,8 @@ public interface RemoteDeptService {
     @ApiOperation(value = "用户查询是否有电子签章")
     @GetMapping("/dept/sign/queryDeptSignByUserId")
     Map<String, Object> queryDeptSignByUserId();
+
+    @ApiOperation(value = "根据部门id查询部门信息")
+    @GetMapping("/dept/info/{id}")
+    AjaxResult getInfoById(@PathVariable("id") Long id);
 }

+ 5 - 0
zd-api/zd-api-system/src/main/java/com/zd/system/api/factory/RemoteDeptFallbackFactory.java

@@ -39,6 +39,11 @@ public class RemoteDeptFallbackFactory implements FallbackFactory<RemoteDeptServ
             public Map<String, Object> queryDeptSignByUserId() {
                 return AjaxResult.error("查询部门电子签章失败:" + throwable.getMessage());
             }
+
+            @Override
+            public AjaxResult getInfoById(Long id) {
+                return AjaxResult.error("查询部门信息失败:" + throwable.getMessage());
+            }
         };
     }
 }

+ 3 - 0
zd-modules/zd-airbottle/src/main/java/com/zd/airbottle/domain/vo/QpAirGoodsConfigRelationVo.java

@@ -143,4 +143,7 @@ public class QpAirGoodsConfigRelationVo {
 
     @ApiModelProperty(value = "格式化后的归还时间")
     private String backTimeApp;
+
+    @ApiModelProperty(value = "部门id")
+    private Long deptId;
 }

+ 23 - 4
zd-modules/zd-airbottle/src/main/java/com/zd/airbottle/service/impl/QpAirGoodsConfigServiceImpl.java

@@ -1,20 +1,22 @@
 package com.zd.airbottle.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.json.JSONUtil;
 import com.zd.airbottle.domain.QpAirGoodsConfig;
 import com.zd.airbottle.domain.vo.QpAirGoodsConfigRelationVo;
 import com.zd.airbottle.domain.vo.QpAirGoodsConfigVo;
 import com.zd.airbottle.mapper.QpAirGoodsConfigMapper;
 import com.zd.airbottle.service.IQpAirGoodsConfigService;
 import com.zd.common.core.utils.bean.TransferUtils;
+import com.zd.common.core.web.domain.AjaxResult;
+import com.zd.common.security.service.TokenService;
+import com.zd.system.api.RemoteDeptService;
+import com.zd.system.api.domain.SysUser;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -25,6 +27,12 @@ public class QpAirGoodsConfigServiceImpl implements IQpAirGoodsConfigService {
     @Autowired
     private QpAirGoodsConfigMapper qpAirGoodsConfigMapper;
 
+    @Autowired
+    private TokenService tokenService;
+
+    @Autowired
+    private RemoteDeptService remoteDeptService;
+
     /**
      * 查询货物配置
      *
@@ -117,6 +125,17 @@ public class QpAirGoodsConfigServiceImpl implements IQpAirGoodsConfigService {
      */
     @Override
     public List<QpAirGoodsConfigRelationVo> selectQpAirGoodsConfigRelationList(QpAirGoodsConfigRelationVo relationVo) {
+
+        SysUser sysUser = tokenService.getLoginUser().getSysUser();
+        AjaxResult dept = remoteDeptService.getInfoById(sysUser.getDept().getDeptId());
+        LinkedHashMap<String,String> linkedHashMap = (LinkedHashMap<String, String>) dept.get("data");
+        String deptId = linkedHashMap.get("ancestors").toString();
+        //查询登录用户所属的院校的供应商
+        if("0".equals(deptId)){
+            relationVo.setDeptId(Long.valueOf(linkedHashMap.get("dept_id").toString()));
+        }else{
+            relationVo.setDeptId( Long.valueOf(deptId.split(",")[1]));
+        }
         return qpAirGoodsConfigMapper.selectQpAirGoodsConfigRelationList(relationVo);
     }
 

+ 3 - 1
zd-modules/zd-airbottle/src/main/resources/mapper/airbottle/QpAirGoodsConfigMapper.xml

@@ -122,6 +122,7 @@
         AND su.status = 0
         AND su.state = 1
         INNER JOIN qp_supplier qps ON qps.id = qab.supplier_id
+        LEFT JOIN sys_dept d on   su.dept_id=d.dept_id
         WHERE
         agc.min_value >0
         <if test="supplierId != null"> and qps.id = #{supplierId}</if>
@@ -130,6 +131,7 @@
         </if>
         <if test="airName != null">  and qab.air_name like  concat('%', #{airName}, '%') </if>
         <if test="specValue != null">  and agc.name like  concat('%', #{specValue}, '%') </if>
+        <if test="deptId != null"> and FIND_IN_SET(su.dept_id,#{deptId})</if>
     </select>
     <select id="getByIds" resultType="com.zd.airbottle.domain.QpAirGoodsConfig">
         <include refid="selectQpAirGoodsConfigVo"/>
@@ -139,4 +141,4 @@
         </foreach>
     </select>
 
-</mapper>
+</mapper>

+ 8 - 0
zd-modules/zd-modules-system/src/main/java/com/zd/system/controller/SysDeptController.java

@@ -132,6 +132,14 @@ public class SysDeptController extends BaseController {
     }
 
     /**
+     * 根据部门编号获取详细信息 "system:dept:query"-无权限
+     */
+    @GetMapping(value = "/info/{deptId}")
+    public AjaxResult getInfoById(@PathVariable Long deptId) {
+        return AjaxResult.success(deptService.selectDeptById(deptId));
+    }
+
+    /**
      * 获取部门下拉树列表
      */
     @GetMapping("/treeselect")