15178832520
2020-05-16 42adfdfb1866101eab568d85d96fcee6f89e70ef
StoreService/src/main/java/com/java110/store/smo/impl/ComplaintInnerServiceSMOImpl.java
@@ -3,8 +3,10 @@
import com.java110.core.base.smo.BaseServiceSMO;
import com.java110.core.smo.complaint.IComplaintInnerServiceSMO;
import com.java110.core.smo.room.IRoomInnerServiceSMO;
import com.java110.core.smo.user.IUserInnerServiceSMO;
import com.java110.dto.PageDto;
import com.java110.dto.RoomDto;
import com.java110.dto.complaint.ComplaintDto;
import com.java110.store.dao.IComplaintServiceDao;
import com.java110.utils.util.BeanConvertUtil;
@@ -12,6 +14,7 @@
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
/**
@@ -31,6 +34,9 @@
    @Autowired
    private IUserInnerServiceSMO userInnerServiceSMOImpl;
    @Autowired
    private IRoomInnerServiceSMO roomInnerServiceSMOImpl;
    @Override
    public List<ComplaintDto> queryComplaints(@RequestBody ComplaintDto complaintDto) {
@@ -44,7 +50,46 @@
        List<ComplaintDto> complaints = BeanConvertUtil.covertBeanList(complaintServiceDaoImpl.getComplaintInfo(BeanConvertUtil.beanCovertMap(complaintDto)), ComplaintDto.class);
        if(complaints == null || complaints.size() == 0){
            return complaints;
        }
        RoomDto roomDto = new RoomDto();
        roomDto.setCommunityId(complaintDto.getCommunityId());
        roomDto.setRoomIds(getRoomIds(complaints));
        List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
        for (ComplaintDto tmpComplainDto : complaints) {
            refreshRoomInfo(tmpComplainDto, roomDtos);
        }
        return complaints;
    }
    /**
     * 从用户列表中查询用户,将用户中的信息 刷新到 floor对象中
     *
     * @param complainDto 小区费用信息
     * @param roomDtos 用户列表
     */
    private void refreshRoomInfo(ComplaintDto complainDto, List<RoomDto> roomDtos) {
        for (RoomDto room : roomDtos) {
            if (room.getRoomId().equals(complainDto.getRoomId())) {
                //BeanConvertUtil.covertBean(room, complainDto);
                complainDto.setFloorNum(room.getFloorNum());
                complainDto.setRoomNum(room.getRoomNum());
                complainDto.setUnitNum(room.getUnitNum());
            }
        }
    }
    private String[] getRoomIds(List<ComplaintDto> complaints) {
        List<String> roomIds = new ArrayList<String>();
        for (ComplaintDto complaint : complaints) {
            roomIds.add(complaint.getRoomId());
        }
        return roomIds.toArray(new String[roomIds.size()]);
    }
@@ -68,4 +113,12 @@
    public void setUserInnerServiceSMOImpl(IUserInnerServiceSMO userInnerServiceSMOImpl) {
        this.userInnerServiceSMOImpl = userInnerServiceSMOImpl;
    }
    public IRoomInnerServiceSMO getRoomInnerServiceSMOImpl() {
        return roomInnerServiceSMOImpl;
    }
    public void setRoomInnerServiceSMOImpl(IRoomInnerServiceSMO roomInnerServiceSMOImpl) {
        this.roomInnerServiceSMOImpl = roomInnerServiceSMOImpl;
    }
}