wuxw
2025-03-07 92167f7a9909e0b25acc5bfb8e302bcbd41e875b
优化欠费工鞥你
6个文件已修改
2个文件已添加
215 ■■■■■ 已修改文件
java110-bean/src/main/java/com/java110/dto/floor/FloorDto.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-db/src/main/resources/mapper/report/ReportCommunityServiceDaoImplMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-interface/src/main/java/com/java110/intf/report/IReportCommunityInnerServiceSMO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/cmd/community/QueryCommunityFloorTreeCmd.java 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/cmd/fee/QueryAdminOweFeeDetailCmd.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/dao/IReportCommunityServiceDao.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/dao/impl/ReportCommunityServiceDaoImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-report/src/main/java/com/java110/report/smo/impl/ReportCommunityInnerServiceSMOImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-bean/src/main/java/com/java110/dto/floor/FloorDto.java
@@ -27,6 +27,8 @@
    private String communityId;
    private String communityName;
    /**
     * 编号
     */
@@ -156,4 +158,12 @@
    public void setSeq(int seq) {
        this.seq = seq;
    }
    public String getCommunityName() {
        return communityName;
    }
    public void setCommunityName(String communityName) {
        this.communityName = communityName;
    }
}
java110-db/src/main/resources/mapper/report/ReportCommunityServiceDaoImplMapper.xml
@@ -277,6 +277,23 @@
        order by CONVERT(t.layer, SIGNED), CONVERT(t.room_num, SIGNED)
    </select>
    <!-- 查询无效费用 add by wuxw 2018-07-03 -->
    <select id="queryCommunityFloorTree" parameterType="Map" resultType="Map">
        select s.community_id communityId,s.name communityName,t.floor_num floorNum,t.`name`,t.floor_id floorId
        from  f_floor t
        left join s_community s on t.community_id = s.community_id and s.status_cd = '0'
        where t.status_cd = '0'
        and s.status_cd = '0'
        <if test="communityIds !=null ">
            and s.community_id in
            <foreach collection="communityIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
        </if>
        order by t.seq
    </select>
    <!-- 查询无效费用 add by wuxw 2018-07-03 -->
    <select id="queryCommunityUnitTree" parameterType="Map" resultType="Map">
        select s.community_id communityId,s.name communityName,f.floor_num floorNum,f.`name`,f.floor_id floorId,
java110-interface/src/main/java/com/java110/intf/report/IReportCommunityInnerServiceSMO.java
@@ -2,6 +2,7 @@
import com.java110.config.feign.FeignConfiguration;
import com.java110.dto.fee.FeeConfigDto;
import com.java110.dto.floor.FloorDto;
import com.java110.dto.inspection.InspectionPlanDto;
import com.java110.dto.parking.ParkingAreaDto;
import com.java110.dto.repair.RepairSettingDto;
@@ -117,4 +118,7 @@
    @RequestMapping(value = "/queryCommunityInspectionTree", method = RequestMethod.POST)
    List<InspectionPlanDto> queryCommunityInspectionTree(@RequestBody InspectionPlanDto inspectionPlanDto);
    @RequestMapping(value = "/queryCommunityFloorTree", method = RequestMethod.POST)
    List<FloorDto> queryCommunityFloorTree(@RequestBody FloorDto floorDto);
}
service-report/src/main/java/com/java110/report/cmd/community/QueryCommunityFloorTreeCmd.java
New file
@@ -0,0 +1,138 @@
package com.java110.report.cmd.community;
import com.alibaba.fastjson.JSONArray;
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.floor.FloorDto;
import com.java110.intf.report.IReportCommunityInnerServiceSMO;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.ListUtil;
import com.java110.utils.util.StringUtil;
import com.java110.vo.ResultVo;
import org.springframework.beans.factory.annotation.Autowired;
import java.text.ParseException;
import java.util.List;
/**
 * 查询小区楼栋树形结构
 */
@Java110Cmd(serviceCode = "community.queryCommunityFloorTree")
public class QueryCommunityFloorTreeCmd extends Cmd {
    @Autowired
    private IReportCommunityInnerServiceSMO reportCommunityInnerServiceSMOImpl;
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
        // must be administrator
        super.validateAdmin(context);
    }
    @Override
    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
        List<FloorDto> floorDtos = null;
        FloorDto floorDto = new FloorDto();
        floorDtos = reportCommunityInnerServiceSMOImpl.queryCommunityFloorTree(floorDto);
        JSONArray communitys = new JSONArray();
        if (ListUtil.isNull(floorDtos)) {
            context.setResponseEntity(ResultVo.createResponseEntity(communitys));
            return;
        }
        JSONObject communityInfo = null;
        for (FloorDto tmpFloorDto : floorDtos) {
            if (!hasInCommunity(tmpFloorDto, communitys)) {
                communityInfo = new JSONObject();
                communityInfo.put("id", "c_" + tmpFloorDto.getCommunityId());
                communityInfo.put("communityId", tmpFloorDto.getCommunityId());
                communityInfo.put("text", tmpFloorDto.getCommunityName());
                communityInfo.put("icon", "/img/org.png");
                communityInfo.put("children", new JSONArray());
                communitys.add(communityInfo);
            }
        }
        JSONObject community = null;
        for (int cIndex = 0; cIndex < communitys.size(); cIndex++) {
            community = communitys.getJSONObject(cIndex);
            // find floor data in unitDtos
            findFloor(community, floorDtos);
        }
        context.setResponseEntity(ResultVo.createResponseEntity(communitys));
    }
    /**
     * find community floor data
     *
     * @param community current community
     * @param unitDtos  all units data
     */
    private void findFloor(JSONObject community, List<FloorDto> unitDtos) {
        JSONArray floors = community.getJSONArray("children");
        JSONObject floorInfo = null;
        for (FloorDto tmpFloorDto : unitDtos) {
            if(!community.getString("communityId").equals(tmpFloorDto.getCommunityId())){
                continue;
            }
            if (!hasInFloor(tmpFloorDto, floors)) {
                floorInfo = new JSONObject();
                floorInfo.put("id", "f_" + tmpFloorDto.getFloorId());
                floorInfo.put("floorId", tmpFloorDto.getFloorId());
                floorInfo.put("communityId", community.getString("communityId"));
                floorInfo.put("text", tmpFloorDto.getFloorNum()+"栋");
                floorInfo.put("icon", "/img/floor.png");
                floorInfo.put("children", new JSONArray());
                floors.add(floorInfo);
            }
        }
    }
    private boolean hasInFloor(FloorDto tmpFloorDto, JSONArray floors) {
        JSONObject floor = null;
        for (int cIndex = 0; cIndex < floors.size(); cIndex++) {
            floor = floors.getJSONObject(cIndex);
            if (!floor.containsKey("floorId")) {
                continue;
            }
            if (StringUtil.isEmpty(floor.getString("floorId"))) {
                continue;
            }
            if (floor.getString("floorId").equals(tmpFloorDto.getFloorId())) {
                return true;
            }
        }
        return false;
    }
    private boolean hasInCommunity(FloorDto tmpFloorDto, JSONArray communitys) {
        JSONObject community = null;
        for (int cIndex = 0; cIndex < communitys.size(); cIndex++) {
            community = communitys.getJSONObject(cIndex);
            if (!community.containsKey("communityId")) {
                continue;
            }
            if (StringUtil.isEmpty(community.getString("communityId"))) {
                continue;
            }
            if (community.getString("communityId").equals(tmpFloorDto.getCommunityId())) {
                return true;
            }
        }
        return false;
    }
}
service-report/src/main/java/com/java110/report/cmd/fee/QueryAdminOweFeeDetailCmd.java
New file
@@ -0,0 +1,24 @@
package com.java110.report.cmd.fee;
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.utils.exception.CmdException;
import java.text.ParseException;
@Java110Cmd(serviceCode = "fee.queryAdminOweFeeDetail")
public class QueryAdminOweFeeDetailCmd extends Cmd {
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
        super.validateAdmin(context);
        super.validatePageInfo(reqJson);
    }
    @Override
    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
    }
}
service-report/src/main/java/com/java110/report/dao/IReportCommunityServiceDao.java
@@ -120,4 +120,6 @@
    List<Map> queryCommunityRepairTree(Map info);
    List<Map> queryCommunityInspectionTree(Map info);
    List<Map> queryCommunityFloorTree(Map info);
}
service-report/src/main/java/com/java110/report/dao/impl/ReportCommunityServiceDaoImpl.java
@@ -165,6 +165,15 @@
    }
    @Override
    public List<Map> queryCommunityFloorTree(Map info) {
        logger.debug("查询queryCommunityFloorTree信息 入参 info : {}", JSONObject.toJSONString(info));
        List<Map> infos = sqlSessionTemplate.selectList("reportCommunityServiceDaoImpl.queryCommunityFloorTree", info);
        return infos;
    }
    @Override
    public int queryHisOwnerCarCount(Map info) {
        logger.debug("查询车辆管理数据 入参 info : {}", info);
service-report/src/main/java/com/java110/report/smo/impl/ReportCommunityInnerServiceSMOImpl.java
@@ -4,6 +4,7 @@
import com.java110.core.base.smo.BaseServiceSMO;
import com.java110.dto.PageDto;
import com.java110.dto.fee.FeeConfigDto;
import com.java110.dto.floor.FloorDto;
import com.java110.dto.inspection.InspectionPlanDto;
import com.java110.dto.parking.ParkingAreaDto;
import com.java110.dto.repair.RepairSettingDto;
@@ -113,6 +114,16 @@
    }
    @Override
    public List<FloorDto> queryCommunityFloorTree(@RequestBody FloorDto floorDto) {
        //校验是否传了 分页信息
        List<FloorDto> floorDtos = BeanConvertUtil.covertBeanList(
                reportCommunityServiceDaoImpl.queryCommunityFloorTree(BeanConvertUtil.beanCovertMap(floorDto)),
                FloorDto.class);
        return floorDtos;
    }
    @Override
    public int queryHisOwnerCarCount(@RequestBody OwnerCarDto ownerCarDto) {
        return reportCommunityServiceDaoImpl.queryHisOwnerCarCount(BeanConvertUtil.beanCovertMap(ownerCarDto));
    }