java110
2022-07-21 c6b944ae631e1d37d8f6bacfa1f5c7e855f0dab8
优化报表功能
5个文件已修改
1个文件已添加
105 ■■■■■ 已修改文件
java110-db/src/main/resources/mapper/report/ReportCommunityServiceDaoImplMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-interface/src/main/java/com/java110/intf/report/IReportCommunityInnerServiceSMO.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/cmd/room/QueryRoomsTreeCmd.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/dao/IReportCommunityServiceDao.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/dao/impl/ReportCommunityServiceDaoImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/smo/impl/ReportCommunityInnerServiceSMOImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-db/src/main/resources/mapper/report/ReportCommunityServiceDaoImplMapper.xml
@@ -199,6 +199,20 @@
    <!-- 查询无效费用 add by wuxw 2018-07-03 -->
    <select id="queryRoomsTree" parameterType="Map" resultType="Map">
        SELECT t.room_id,t.room_id roomId,t.layer,t.room_num,
        t.room_num roomNum,t.unit_id,u.`unit_num` unitNum,
        u.unit_id unitId,f.floor_id floorId,f.floor_num floorNum,t.`community_id` communityId,bo.owner_id ownerId ,bo.`name` ownerName ,bo.link link
        FROM building_room t
        inner join building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
        inner JOIN f_floor f on u.`floor_id` = f.`floor_id` AND f.`community_id` = t.`community_id` AND f.`status_cd` =
        '0'
        left join building_owner_room_rel borr on t.room_id =  borr.room_id and borr.status_cd = '0'
        left join building_owner bo on borr.owner_id =  bo.member_id and bo.status_cd = '0'
        WHERE 1 =1
        and u.unit_id = #{unitId}
        and t.community_id= #{communityId}
    </select>
</mapper>
java110-interface/src/main/java/com/java110/intf/report/IReportCommunityInnerServiceSMO.java
@@ -41,5 +41,12 @@
    @RequestMapping(value = "/queryCarStructures", method = RequestMethod.POST)
    List<OwnerCarDto> queryCarStructures(@RequestBody OwnerCarDto ownerCarDto);
    /**
     * 查询房屋树形
     * @param roomDto
     * @return
     */
    @RequestMapping(value = "/queryRoomsTree", method = RequestMethod.POST)
    List<RoomDto> queryRoomsTree(@RequestBody RoomDto roomDto);
}
service-report/src/main/java/com/java110/report/cmd/room/QueryRoomsTreeCmd.java
New file
@@ -0,0 +1,61 @@
package com.java110.report.cmd.room;
import com.alibaba.fastjson.JSONObject;
import com.java110.core.annotation.Java110Cmd;
import com.java110.core.context.ICmdDataFlowContext;
import com.java110.core.event.cmd.Cmd;
import com.java110.core.event.cmd.CmdEvent;
import com.java110.dto.RoomDto;
import com.java110.intf.report.IReportCommunityInnerServiceSMO;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.vo.api.ApiRoomDataVo;
import com.java110.vo.api.ApiRoomVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import java.util.List;
@Java110Cmd(serviceCode = "room.queryRoomsTree")
public class QueryRoomsTreeCmd extends Cmd {
    @Autowired
    private IReportCommunityInnerServiceSMO reportCommunityInnerServiceSMOImpl;
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
        Assert.jsonObjectHaveKey(reqJson, "unitId", "请求中未包含单元信息");
        Assert.jsonObjectHaveKey(reqJson, "page", "请求报文中未包含page节点");
        Assert.jsonObjectHaveKey(reqJson, "row", "请求报文中未包含row节点");
        Assert.isInteger(reqJson.getString("page"), "page不是数字");
        Assert.isInteger(reqJson.getString("row"), "row不是数字");
        Assert.hasLength(reqJson.getString("communityId"), "小区ID不能为空");
    }
    @Override
    public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
        RoomDto roomDto = BeanConvertUtil.covertBean(reqJson, RoomDto.class);
        ApiRoomVo apiRoomVo = new ApiRoomVo();
        List<RoomDto> roomDtoList = null;
        roomDtoList = reportCommunityInnerServiceSMOImpl.queryRoomsTree(roomDto);
        apiRoomVo.setTotal(0);
        if (roomDtoList != null && roomDtoList.size() > 0) {
            apiRoomVo.setTotal(roomDtoList.size());
        }
        apiRoomVo.setRooms(BeanConvertUtil.covertBeanList(roomDtoList, ApiRoomDataVo.class));
        int row = reqJson.getInteger("row");
        apiRoomVo.setRecords((int) Math.ceil((double) apiRoomVo.getTotal() / (double) row));
        ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiRoomVo), HttpStatus.OK);
        cmdDataFlowContext.setResponseEntity(responseEntity);
    }
}
service-report/src/main/java/com/java110/report/dao/IReportCommunityServiceDao.java
@@ -79,4 +79,7 @@
     */
    List<Map> queryInvalidFeeMonthStatistics(Map reportFeeDto);
    List<Map>  queryRoomsTree(Map info);
}
service-report/src/main/java/com/java110/report/dao/impl/ReportCommunityServiceDaoImpl.java
@@ -117,4 +117,14 @@
        return deposits;
    }
    @Override
    public List<Map> queryRoomsTree(Map info) {
        logger.debug("查询queryRoomsTree信息 入参 info : {}", JSONObject.toJSONString(info));
        List<Map> communityDtos = sqlSessionTemplate.selectList("reportCommunityServiceDaoImpl.queryRoomsTree", info);
        return communityDtos;
    }
}
service-report/src/main/java/com/java110/report/smo/impl/ReportCommunityInnerServiceSMOImpl.java
@@ -56,4 +56,12 @@
    }
    @Override
    public List<RoomDto> queryRoomsTree(@RequestBody RoomDto roomDto) {
        //校验是否传了 分页信息
        List<RoomDto> roomDtos = BeanConvertUtil.covertBeanList(reportCommunityServiceDaoImpl.queryRoomsTree(BeanConvertUtil.beanCovertMap(roomDto)), RoomDto.class);
        return roomDtos;
    }
}