ソースを参照

optimize report data

java110 3 年 前
コミット
a7b72c8349

+ 102 - 0
java110-interface/src/main/java/com/java110/intf/report/IBaseDataStatisticsInnerServiceSMO.java

@@ -0,0 +1,102 @@
+package com.java110.intf.report;
+
+import com.java110.config.feign.FeignConfiguration;
+import com.java110.dto.report.QueryStatisticsDto;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName IReportFeeStatisticsInnerServiceSMO
+ * @Description 费用统计类 服务类
+ * @Author wuxw
+ * @Date 2019/4/24 9:04
+ * @Version 1.0
+ * add by wuxw 2019/4/24
+ **/
+@FeignClient(name = "report-service", configuration = {FeignConfiguration.class})
+@RequestMapping("/baseDataStatisticsApi")
+public interface IBaseDataStatisticsInnerServiceSMO {
+
+
+    /**
+     * <p>查询历史月欠费</p>
+     *
+     * @param queryFeeStatisticsDto 数据对象分享
+     */
+    @RequestMapping(value = "/getHisMonthOweFee", method = RequestMethod.POST)
+    double getHisMonthOweFee(@RequestBody QueryStatisticsDto queryFeeStatisticsDto);
+
+    /**
+     * 查询当月欠费
+     *
+     * @param queryFeeStatisticsDto
+     * @return
+     */
+    @RequestMapping(value = "/getCurMonthOweFee", method = RequestMethod.POST)
+    double getCurMonthOweFee(@RequestBody QueryStatisticsDto queryFeeStatisticsDto);
+
+
+    /**
+     * 查询当月应收
+     *
+     * @param queryStatisticsDto
+     * @return
+     */
+    @RequestMapping(value = "/getCurReceivableFee", method = RequestMethod.POST)
+    double getCurReceivableFee(@RequestBody QueryStatisticsDto queryStatisticsDto);
+
+    @RequestMapping(value = "/getHisReceivedFee", method = RequestMethod.POST)
+    double getHisReceivedFee(@RequestBody QueryStatisticsDto queryFeeStatisticsDto);
+
+    @RequestMapping(value = "/getPreReceivedFee", method = RequestMethod.POST)
+    double getPreReceivedFee(@RequestBody QueryStatisticsDto queryFeeStatisticsDto);
+
+    @RequestMapping(value = "/getReceivedFee", method = RequestMethod.POST)
+    double getReceivedFee(@RequestBody QueryStatisticsDto queryFeeStatisticsDto);
+
+    /**
+     * 欠费户数
+     *
+     * @param queryStatisticsDto
+     * @return
+     */
+    @RequestMapping(value = "/getOweRoomCount", method = RequestMethod.POST)
+    int getOweRoomCount(@RequestBody QueryStatisticsDto queryStatisticsDto);
+
+    /**
+     * 查询收费房屋数
+     *
+     * @param queryStatisticsDto
+     * @return
+     */
+    @RequestMapping(value = "/getFeeRoomCount", method = RequestMethod.POST)
+    long getFeeRoomCount(@RequestBody QueryStatisticsDto queryStatisticsDto);
+
+    /**
+     * 楼栋收费率信息统计
+     *
+     * @param queryStatisticsDto
+     * @return
+     */
+    @RequestMapping(value = "/getFloorFeeSummary", method = RequestMethod.POST)
+    List<Map> getFloorFeeSummary(@RequestBody QueryStatisticsDto queryStatisticsDto);
+
+    /**
+     * 费用项收费率统计
+     * @param queryStatisticsDto
+     * @return
+     */
+    @RequestMapping(value = "/getConfigFeeSummary", method = RequestMethod.POST)
+    List<Map> getConfigFeeSummary(@RequestBody QueryStatisticsDto queryStatisticsDto);
+
+    @RequestMapping(value = "/getObjFeeSummaryCount", method = RequestMethod.POST)
+    int getObjFeeSummaryCount(@RequestBody QueryStatisticsDto queryStatisticsDto);
+
+    @RequestMapping(value = "/getObjFeeSummary", method = RequestMethod.POST)
+    List<Map> getObjFeeSummary(@RequestBody QueryStatisticsDto queryStatisticsDto);
+}

+ 1 - 10
service-community/src/main/java/com/java110/community/cmd/room/QueryRoomsCmd.java

@@ -122,16 +122,7 @@ public class QueryRoomsCmd extends Cmd {
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
         RoomDto roomDto = BeanConvertUtil.covertBean(reqJson, RoomDto.class);
         RoomDto roomDto = BeanConvertUtil.covertBean(reqJson, RoomDto.class);
 
 
-        //导致业务受理搜索查询
-//        if (reqJson.containsKey("flag") && reqJson.getString("flag").equals("1")) {
-//            if (reqJson.containsKey("roomNumLike") && !StringUtil.isEmpty(reqJson.getString("roomNumLike"))) {
-//                String[] roomNumLikes = reqJson.getString("roomNumLike").split("-");
-//                roomDto.setFloorNum(roomNumLikes[0]);
-//                roomDto.setUnitNum(roomNumLikes[1]);
-//                roomDto.setRoomNum(roomNumLikes[2]);
-//                roomDto.setRoomNumLike("");
-//            }
-//        }
+
 
 
         //员工数据权限
         //员工数据权限
         String staffId = cmdDataFlowContext.getReqHeaders().get("user-id");
         String staffId = cmdDataFlowContext.getReqHeaders().get("user-id");

+ 56 - 0
service-report/src/main/java/com/java110/report/cmd/reportFeeMonthStatistics/QueryReportFeeDetailRoomCmd.java

@@ -0,0 +1,56 @@
+package com.java110.report.cmd.reportFeeMonthStatistics;
+
+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.report.QueryStatisticsDto;
+import com.java110.intf.community.IRoomV1InnerServiceSMO;
+import com.java110.report.statistics.IBaseDataStatistics;
+import com.java110.report.statistics.IFeeStatistics;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.text.ParseException;
+
+/**
+ * 查询房屋费用明细表
+ * 以房屋为维度统计 房屋的各个费用项 欠费和实收
+ */
+
+@Java110Cmd(serviceCode = "reportFeeMonthStatistics.queryReportFeeDetailRoom")
+public class QueryReportFeeDetailRoomCmd extends Cmd {
+
+    @Autowired
+    private IFeeStatistics feeStatisticsImpl;
+
+    @Autowired
+    private IBaseDataStatistics baseDataStatisticsImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
+        super.validatePageInfo(reqJson);
+        Assert.hasKeyAndValue(reqJson, "startDate", "未包含开始日期");
+        Assert.hasKeyAndValue(reqJson, "endDate", "未包含结束日期");
+        Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区信息");
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
+
+        QueryStatisticsDto queryStatisticsDto = new QueryStatisticsDto();
+        queryStatisticsDto.setCommunityId(reqJson.getString("communityId"));
+        queryStatisticsDto.setStartDate(reqJson.getString("startDate"));
+        queryStatisticsDto.setEndDate(reqJson.getString("endDate"));
+        queryStatisticsDto.setConfigId(reqJson.getString("configId"));
+        queryStatisticsDto.setFloorId(reqJson.getString("floorId"));
+        queryStatisticsDto.setObjName(reqJson.getString("objName"));
+        queryStatisticsDto.setFeeTypeCd(reqJson.getString("feeTypeCd"));
+        queryStatisticsDto.setOwnerName(reqJson.getString("ownerName"));
+        queryStatisticsDto.setLink(reqJson.getString("link"));
+        baseDataStatisticsImpl.getRoomCount(queryStatisticsDto);
+
+    }
+}

+ 5 - 0
service-report/src/main/java/com/java110/report/statistics/impl/BaseDataStatisticsImpl.java

@@ -3,6 +3,8 @@ package com.java110.report.statistics.impl;
 import com.java110.dto.RoomDto;
 import com.java110.dto.RoomDto;
 import com.java110.dto.report.QueryStatisticsDto;
 import com.java110.dto.report.QueryStatisticsDto;
 import com.java110.intf.community.IRoomV1InnerServiceSMO;
 import com.java110.intf.community.IRoomV1InnerServiceSMO;
+import com.java110.intf.report.IBaseDataStatisticsInnerServiceSMO;
+import com.java110.intf.report.IReportFeeStatisticsInnerServiceSMO;
 import com.java110.report.statistics.IBaseDataStatistics;
 import com.java110.report.statistics.IBaseDataStatistics;
 import com.java110.utils.util.StringUtil;
 import com.java110.utils.util.StringUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -17,6 +19,9 @@ public class BaseDataStatisticsImpl implements IBaseDataStatistics {
     @Autowired
     @Autowired
     private IRoomV1InnerServiceSMO roomV1InnerServiceSMOImpl;
     private IRoomV1InnerServiceSMO roomV1InnerServiceSMOImpl;
 
 
+    @Autowired
+    private IBaseDataStatisticsInnerServiceSMO baseDataStatisticsInnerServiceSMOImpl;
+
     /**
     /**
      * 查询全部房屋
      * 查询全部房屋
      *
      *