Bladeren bron

添加一个机构查询接口

高雄 1 jaar geleden
bovenliggende
commit
86d5ff7c80

+ 9 - 0
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysDeptController.java

@@ -29,6 +29,7 @@ import com.xunmei.system.api.domain.SysOrg;
 import com.xunmei.system.api.domain.SysUser;
 import com.xunmei.system.api.vo.FindOrgTypes;
 import com.xunmei.system.api.vo.SysOrgVO;
+import com.xunmei.system.dto.SysOrgDto;
 import com.xunmei.system.service.ISysDeptService;
 import com.xunmei.system.service.ISysOrgService;
 import com.xunmei.system.service.ISysUserService;
@@ -497,4 +498,12 @@ public class SysDeptController extends BaseController {
     SysOrg findByCode(@PathVariable("guid") String guid){
         return orgService.findByCode(guid);
     }
+
+
+    @ApiOperation(value = "根据查询条件获取机构列表")
+    @PostMapping("/selectOrgList")
+    public List<SysOrg> selectOrgList(@RequestBody SysOrgDto org){
+        List<SysOrg> sysOrgs = orgService.selectOrgList(org);
+        return sysOrgs;
+    }
 }

+ 41 - 0
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/dto/SysOrgDto.java

@@ -0,0 +1,41 @@
+package com.xunmei.system.dto;
+
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @description:
+ * 机构查询实体
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SysOrgDto {
+
+    /**
+     * 机构id
+     */
+    private Long orgId;
+
+    /**
+     * 机构名称
+     */
+    private String orgName;
+
+    /**
+     * 机构类型
+     */
+    private String orgType;
+
+    /**
+     * 机构路径
+     */
+    private String orgPath;
+
+    /**
+     * 是否下穿查询
+     */
+    private Boolean checkSub=Boolean.FALSE;
+}

+ 9 - 0
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/mapper/SysOrgMapper.java

@@ -6,6 +6,7 @@ import com.xunmei.common.core.vo.IdNameVo;
 import com.xunmei.system.api.domain.SysOrg;
 import com.xunmei.system.api.vo.FindOrgTypes;
 import com.xunmei.system.api.vo.SysOrgVO;
+import com.xunmei.system.dto.SysOrgDto;
 import com.xunmei.system.util.ConstructionDetailExport;
 import com.xunmei.system.util.OrgPhysicalDefenseConstructionExport;
 import org.apache.ibatis.annotations.Param;
@@ -187,4 +188,12 @@ public interface SysOrgMapper extends BaseMapper<SysOrg> {
     Integer oldRectificationStatus(@Param("orgPath") String orgPath, @Param("year") String year);
 
     Integer noRectificationStatus(@Param("orgPath") String orgPath, @Param("year") String year);
+
+
+    /**
+     * 根据查询条件获取机构数据
+     * @param org
+     * @return
+     */
+    List<SysOrg> selectOrgs(@Param("org") SysOrgDto org);
 }

+ 8 - 0
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/ISysOrgService.java

@@ -7,6 +7,7 @@ import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.system.api.domain.SysOrg;
 import com.xunmei.system.api.vo.FindOrgTypes;
 import com.xunmei.system.api.vo.SysOrgVO;
+import com.xunmei.system.dto.SysOrgDto;
 import com.xunmei.system.util.ConstructionDetailExport;
 import com.xunmei.system.util.OrgPhysicalDefenseConstructionExport;
 import com.xunmei.system.util.SecurityWorkExport;
@@ -175,4 +176,11 @@ public interface ISysOrgService extends IService<SysOrg> {
     List<SysOrg> selectDqAndHs();
 
     SysOrg findByCode(String guid);
+
+    /**
+     * 根据特定的查询条件获取机构数据
+     * @param org
+     * @return
+     */
+    List<SysOrg> selectOrgList(SysOrgDto org);
 }

+ 13 - 0
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysOrgServiceImpl.java

@@ -28,6 +28,7 @@ import com.xunmei.system.api.domain.SysDictData;
 import com.xunmei.system.api.domain.SysOrg;
 import com.xunmei.system.api.vo.FindOrgTypes;
 import com.xunmei.system.api.vo.SysOrgVO;
+import com.xunmei.system.dto.SysOrgDto;
 import com.xunmei.system.mapper.SysOrgMapper;
 import com.xunmei.system.mapper.SysUserMapper;
 import com.xunmei.system.service.ISysOrgService;
@@ -1086,4 +1087,16 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
     public SysOrg findByCode(String guid) {
         return lambdaQuery().eq(SysOrg::getCode, guid).last(Constants.LIMIT1).one();
     }
+
+    @Override
+    public List<SysOrg> selectOrgList(SysOrgDto org) {
+        if(ObjectUtil.isNotEmpty(org.getOrgId())){
+            SysOrg sysOrg = getById(org.getOrgId());
+
+            if(org.getCheckSub()){
+                org.setOrgPath(sysOrg.getPath());
+            }
+        }
+        return null;
+    }
 }

+ 21 - 0
soc-modules/soc-modules-system/src/main/resources/mapper/system/SysOrgMapper.xml

@@ -1295,5 +1295,26 @@ and a.org_path LIKE concat(#{orgPath}, '%')
         sort
     </select>
 
+    <select id="selectOrgs">
+        SELECT
+        *
+        FROM
+        sys_org
+        WHERE 1=1
+        AND is_lock=0
+        AND deleted = 0
+        <if test="org.orgPath != null">
+            AND path LIKE concat(#{org.orgPath}, '%')
+        </if>
+        <if test="org.orgType != null">
+            AND type = #{org.orgType}
+        </if>
+        <if test="org.orgName != null">
+            AND short_name LIKE concat('%',#{org.orgName}, '%')
+        </if>
+        ORDER BY
+        affiliated_area,affiliated_bank,sort
+    </select>
+
 
 </mapper>