Ver código fonte

权限修改

hym 4 anos atrás
pai
commit
d0802fb39b

+ 9 - 1
sms_water/src/main/java/com/huaxu/entity/CameraManage.java

@@ -144,5 +144,13 @@ public class CameraManage implements Serializable {
      */
     @ApiModelProperty(value = "机构权限集合",hidden = true)
     @TableField(exist = false)
-    private List<ProgramItem> items;
+    private List<ProgramItem> programItems;
+    /**
+     * 场景名称
+     */
+    @ApiModelProperty(value = "权限类型",hidden = true)
+    @TableField(exist = false)
+    private Integer permissonType;
+
+
 }

+ 4 - 2
sms_water/src/main/java/com/huaxu/service/impl/CameraManageServiceImpl.java

@@ -92,7 +92,8 @@ public class CameraManageServiceImpl implements CameraManageService {
     public List<CameraManage> selectList(CameraManage cameraManage) {
         LoginUser currentUser = UserUtil.getCurrentUser();
         cameraManage.setTenantId(currentUser.getTenantId());
-        cameraManage.setItems(currentUser.getProgramItemList());
+        cameraManage.setProgramItems(currentUser.getProgramItemList());
+        cameraManage.setPermissonType(currentUser.getPermissonType());
         return this.cameraManageMapper.selectList(cameraManage);
     }
 
@@ -270,7 +271,8 @@ public class CameraManageServiceImpl implements CameraManageService {
     public IPage<CameraManage> selectPage(CameraManage cameraManage, IPage<CameraManage> page) {
         LoginUser currentUser = UserUtil.getCurrentUser();
         cameraManage.setTenantId(currentUser.getTenantId());
-        cameraManage.setItems(currentUser.getProgramItemList());
+        cameraManage.setProgramItems(currentUser.getProgramItemList());
+        cameraManage.setPermissonType(currentUser.getPermissonType());
         Map<String, String> allOrgName = util.getAllOrgName();
         IPage<CameraManage> cameraManageIPage = this.cameraManageMapper.selectPage(page, cameraManage);
         cameraManageIPage.getRecords().forEach(record->{

+ 42 - 29
sms_water/src/main/resources/mapper/CameraManageMapper.xml

@@ -52,25 +52,31 @@
         from sms_camera_manage a
         <where>
             a.status=1
-            <if test="items != null">
-                and (a.COMPANY_ORG_ID in
-                <foreach item="item" index="index" collection="items" open="(" separator="," close=")">
-                    <if test="item.orgCompanyId!= null">
-
-                        #{item.orgCompanyId}
-                    </if>
-
+            <if test="permissonType == 5 or permissonType == 2">
+                and ( a.DEPT_ORG_ID in
+                <foreach collection="programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
                 </foreach>
-                or a.DEPT_ORG_ID in
-                <foreach item="item" index="index" collection="items" open="(" separator="," close=")">
-                    <if test="item.orgDeparmtmentId!= null">
-
-                        #{item.orgDeparmtmentId}
-                    </if>
-
+                or
+                a.COMPANY_ORG_ID in
+                <foreach collection="programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
                 </foreach>
                 )
             </if>
+            <if test="permissonType == 4 or permissonType == 3">
+                and a.DEPT_ORG_ID in
+                <foreach collection="programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+            </if>
+            <if test="permissonType == 1">
+                and a.COMPANY_ORG_ID in
+                <foreach collection="programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+                and (a.DEPT_ORG_ID is null or a.DEPT_ORG_ID =0)
+            </if>
             <if test="id != null">
                 and ID = #{id}
             </if>
@@ -239,25 +245,32 @@
         from sms_camera_manage a join sms_scene b on a.SCENE_ID=b.ID
         <where>
             a.status=1
-            <if test="cameraManage.items != null">
-                and (a.COMPANY_ORG_ID in
-                <foreach item="item" index="index" collection="cameraManage.items" open="(" separator="," close=")">
-                    <if test="item.orgCompanyId!= null">
-
-                        #{item.orgCompanyId}
-                    </if>
 
+            <if test="cameraManage.permissonType == 5 or cameraManage.permissonType == 2">
+                and ( a.DEPT_ORG_ID in
+                <foreach collection="cameraManage.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
                 </foreach>
-                or a.DEPT_ORG_ID in
-                <foreach item="item" index="index" collection="cameraManage.items" open="(" separator="," close=")">
-                    <if test="item.orgDeparmtmentId!= null">
-
-                        #{item.orgDeparmtmentId}
-                    </if>
-
+                or
+                a.COMPANY_ORG_ID in
+                <foreach collection="cameraManage.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
                 </foreach>
                 )
             </if>
+            <if test="cameraManage.permissonType == 4 or cameraManage.permissonType == 3">
+                and a.DEPT_ORG_ID in
+                <foreach collection="cameraManage.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+            </if>
+            <if test="cameraManage.permissonType == 1">
+                and a.COMPANY_ORG_ID in
+                <foreach collection="cameraManage.programItems" item="item" open="(" close=")" separator=",">
+                    #{item.orgId}
+                </foreach>
+                and (a.DEPT_ORG_ID is null or a.DEPT_ORG_ID =0)
+            </if>
             <if test="cameraManage.id != null">
                 and ID = #{cameraManage.id}
             </if>

+ 5 - 2
user_center/src/main/java/com/huaxu/service/impl/OrgServiceImpl.java

@@ -235,7 +235,7 @@ public class OrgServiceImpl implements OrgService {
         List<OrgTree> trees=new ArrayList<>();
         if("company".equals(org.getOrgType())){
 
-            if(currentUser.getDepartmentId()==null){
+            if(currentUser.getDepartmentId()==null&&currentUser.getPermissonType()==2){
                 trees=orgMapper.selectTrees(org);
                 trees=getOrgTreeByOrg(trees,currentUser.getCompanyId(),orgIds);
             }else{
@@ -243,10 +243,13 @@ public class OrgServiceImpl implements OrgService {
                 trees=orgMapper.selectTrees(org);
             }
         }else{
-            if(currentUser.getDepartmentId()!=null){
+            if(currentUser.getDepartmentId()!=null&&currentUser.getPermissonType()==4){
                 org.setOrgType("department");
                 trees=orgMapper.selectTrees(org);
                 trees=getOrgTreeByOrg(trees,currentUser.getDepartmentId(),orgIds);
+            }if(currentUser.getDepartmentId()!=null&&currentUser.getPermissonType()==3){
+                org.setId(currentUser.getDepartmentId());
+                trees=orgMapper.selectTrees(org);
             }else{
                 trees=orgMapper.selectTrees(org);
                 trees=getOrgDepartmentTree(trees,id);