wuxw 3 年 前
コミット
b69586892f

+ 6 - 0
java110-db/src/main/resources/mapper/community/UnitServiceDaoImplMapper.xml

@@ -109,6 +109,12 @@
         <if test="unitId !=null and unitId != ''">
             and t.unit_id= #{unitId}
         </if>
+        <if test="unitIds !=null">
+            and t.unit_id in
+            <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         <if test="unitNum !=null and unitNum != ''">
             and t.unit_num= #{unitNum}
         </if>

+ 14 - 0
service-community/src/main/java/com/java110/community/cmd/unit/QueryUnitsCmd.java

@@ -6,6 +6,8 @@ import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.dto.UnitDto;
+import com.java110.dto.dataPrivilegeStaff.DataPrivilegeStaffDto;
+import com.java110.intf.community.IDataPrivilegeUnitV1InnerServiceSMO;
 import com.java110.intf.community.IFloorInnerServiceSMO;
 import com.java110.intf.community.IUnitInnerServiceSMO;
 import com.java110.utils.exception.CmdException;
@@ -26,6 +28,9 @@ public class QueryUnitsCmd extends Cmd {
     @Autowired
     private IFloorInnerServiceSMO floorInnerServiceSMOImpl;
 
+    @Autowired
+    private IDataPrivilegeUnitV1InnerServiceSMO dataPrivilegeUnitV1InnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
@@ -43,6 +48,15 @@ public class QueryUnitsCmd extends Cmd {
         UnitDto unitDto = BeanConvertUtil.covertBean(reqJson, UnitDto.class);
         unitDto.setUserId("");
 
+        String staffId = cmdDataFlowContext.getReqHeaders().get("user-id");
+        DataPrivilegeStaffDto dataPrivilegeStaffDto = new DataPrivilegeStaffDto();
+        dataPrivilegeStaffDto.setStaffId(staffId);
+        String[] unitIds = dataPrivilegeUnitV1InnerServiceSMOImpl.queryDataPrivilegeUnitsByStaff(dataPrivilegeStaffDto);
+
+        if(unitIds != null && unitIds.length>0){
+            unitDto.setUnitIds(unitIds);
+        }
+
         List<UnitDto> unitDtoList = unitInnerServiceSMOImpl.queryUnits(unitDto);
 
         List<ApiUnitVo> apiUnitVos = BeanConvertUtil.covertBeanList(unitDtoList, ApiUnitVo.class);