java110-db/src/main/resources/mapper/report/ReportFeeMonthStatisticsServiceDaoImplMapper.xml
@@ -1023,6 +1023,137 @@ limit #{page}, #{row} </if> </select> <select id="queryFeeBreakdownDetailCount" parameterType="Map" resultType="Map"> select count(1) count from report_fee_month_statistics t inner join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0' left join building_room br on t.obj_id = br.room_id and t.obj_type = '3333' and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' left join t_dict td on pfc.fee_type_cd = td.status_cd and td.table_name='pay_fee_config' and td.table_columns='fee_type_cd' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.community_id = t.community_id and pf.status_cd = '0' where t.status_cd = '0' <if test="roomNum !=null and roomNum != ''"> and br.room_num= #{roomNum} </if> <if test="unitId !=null and unitId != ''"> and bu.unit_id= #{unitId} </if> <if test="floorId !=null and floorId != ''"> and f.floor_id = #{floorId} </if> <if test="objName !=null and objName != ''"> and t.obj_name= #{objName} </if> <if test="feeYear !=null and feeYear != ''"> and t.fee_year= #{feeYear} </if> <if test="feeMonth !=null and feeMonth != ''"> and t.fee_month= #{feeMonth} </if> <if test="feeId !=null and feeId != ''"> and t.fee_id= #{feeId} </if> <if test="configId !=null and configId != ''"> and pfc.config_id= #{configId} </if> <if test="objId !=null and objId != ''"> and t.obj_id= #{objId} </if> <if test="feeName !=null and feeName != ''"> and t.fee_name= #{feeName} </if> <if test="feeTypeCd != null and feeTypeCd != ''"> and pfc.fee_type_cd = #{feeTypeCd} </if> <if test="communityId !=null and communityId != ''"> and t.community_id= #{communityId} </if> <if test="startTime !=null and startTime != ''"> and pfc.start_time >= #{startTime} </if> <if test="endTime !=null and endTime != ''"> and pfc.start_time <= #{endTime} </if> <if test="yearMonth !=null and yearMonth != ''"> and concat(t.fee_year,lpad(t.fee_month,2,0)) = #{yearMonth} </if> </select> <!-- 查询费用月统计信息 add by wuxw 2018-07-03 and t.receivable_amount >= 0 and t.received_amount >= 0 and t.owe_amount >= 0 --> <select id="queryFeeBreakdownDetail" parameterType="Map" resultType="Map"> select t.obj_name objName,t.fee_name feeName,t.fee_year feeYear,t.fee_month feeMonth,t.create_time createTime ,t.config_id configId,t.his_owe_amount hisOweAmount,t.cur_receivable_amount curReceivableAmount, t.cur_received_amount curReceivedAmount,t.his_owe_received_amount hisOweReceivedAmount,t.pre_received_amount preReceivedAmount, t.update_time updateTime,t.his_owe_amount+t.cur_receivable_amount receivableAmount, t.cur_received_amount+t.his_owe_received_amount+t.pre_received_amount receivedAmount,t.update_time updateTime from report_fee_month_statistics t inner join pay_fee_config pfc on t.config_id = pfc.config_id and pfc.status_cd = '0' left join building_room br on t.obj_id = br.room_id and t.obj_type = '3333' and br.status_cd = '0' left join building_unit bu on br.unit_id = bu.unit_id and bu.status_cd = '0' left join f_floor f on bu.floor_id = f.floor_id and f.status_cd = '0' left join t_dict td on pfc.fee_type_cd = td.status_cd and td.table_name='pay_fee_config' and td.table_columns='fee_type_cd' inner join pay_fee pf on t.fee_id = pf.fee_id and pf.community_id = t.community_id and pf.status_cd = '0' where t.status_cd = '0' <if test="roomNum !=null and roomNum != ''"> and br.room_num= #{roomNum} </if> <if test="unitId !=null and unitId != ''"> and bu.unit_id= #{unitId} </if> <if test="floorId !=null and floorId != ''"> and f.floor_id = #{floorId} </if> <if test="objName !=null and objName != ''"> and t.obj_name= #{objName} </if> <if test="feeYear !=null and feeYear != ''"> and t.fee_year= #{feeYear} </if> <if test="feeMonth !=null and feeMonth != ''"> and t.fee_month= #{feeMonth} </if> <if test="feeId !=null and feeId != ''"> and t.fee_id= #{feeId} </if> <if test="configId !=null and configId != ''"> and pfc.config_id= #{configId} </if> <if test="objId !=null and objId != ''"> and t.obj_id= #{objId} </if> <if test="feeName !=null and feeName != ''"> and t.fee_name= #{feeName} </if> <if test="feeTypeCd != null and feeTypeCd != ''"> and pfc.fee_type_cd = #{feeTypeCd} </if> <if test="communityId !=null and communityId != ''"> and t.community_id= #{communityId} </if> <if test="startTime !=null and startTime != ''"> and pfc.start_time >= #{startTime} </if> <if test="endTime !=null and endTime != ''"> and pfc.start_time <= #{endTime} </if> <if test="yearMonth !=null and yearMonth != ''"> and concat(t.fee_year,lpad(t.fee_month,2,0)) = #{yearMonth} </if> order by t.create_time desc <if test="page != -1 and page != null "> limit #{page}, #{row} </if> </select> <!-- 查询费用月统计信息 add by wuxw 2018-07-03 and t.receivable_amount >= 0 and t.received_amount >= 0 and t.owe_amount >= 0 --> <select id="queryFeeBreakdownMajor" parameterType="Map" resultType="Map"> select java110-interface/src/main/java/com/java110/intf/report/IReportFeeMonthStatisticsInnerServiceSMO.java
@@ -161,6 +161,25 @@ @RequestMapping(value = "/queryFeeBreakdown", method = RequestMethod.POST) List<ReportFeeMonthStatisticsDto> queryFeeBreakdown(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto); /** * 查询费用汇总表个数 * * @param reportFeeMonthStatisticsDto * @return */ @RequestMapping(value = "/queryFeeBreakdownDetailCount", method = RequestMethod.POST) int queryFeeBreakdownDetailCount(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto); /** * 查询费用汇总表 * * @param reportFeeMonthStatisticsDto * @return */ @RequestMapping(value = "/queryFeeBreakdownDetail", method = RequestMethod.POST) List<ReportFeeMonthStatisticsDto> queryFeeBreakdownDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto); @RequestMapping(value = "/queryFeeBreakdownMajor", method = RequestMethod.POST) ReportFeeMonthStatisticsDto queryFeeBreakdownMajor(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto); service-report/src/main/java/com/java110/report/cmd/reportFeeMonthStatistics/QueryReportFeeBreakdownDetailCmd.java
New file @@ -0,0 +1,61 @@ 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.reportFeeMonthStatistics.ReportFeeMonthStatisticsDto; import com.java110.intf.report.IReportFeeMonthStatisticsInnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.Assert; import com.java110.utils.util.BeanConvertUtil; import com.java110.utils.util.StringUtil; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import java.util.ArrayList; import java.util.List; @Java110Cmd(serviceCode = "/reportFeeMonthStatistics/queryReportFeeBreakdownDetail") public class QueryReportFeeBreakdownDetailCmd extends Cmd { @Autowired private IReportFeeMonthStatisticsInnerServiceSMO reportFeeMonthStatisticsInnerServiceSMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException { Assert.hasKeyAndValue(reqJson, "communityId", "未传入小区信息"); Assert.hasKeyAndValue(reqJson, "feeName", "未传入费用项名称"); super.validatePageInfo(reqJson); } @Override public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException { ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto = BeanConvertUtil.covertBean(reqJson, ReportFeeMonthStatisticsDto.class); if (!StringUtil.isEmpty(reportFeeMonthStatisticsDto.getStartTime())) { reportFeeMonthStatisticsDto.setStartTime(reportFeeMonthStatisticsDto.getStartTime() + " 00:00:00"); } if (!StringUtil.isEmpty(reportFeeMonthStatisticsDto.getEndTime())) { reportFeeMonthStatisticsDto.setEndTime(reportFeeMonthStatisticsDto.getEndTime() + " 23:59:59"); } int count = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeBreakdownDetailCount(reportFeeMonthStatisticsDto); List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticsDtos = null; if (count > 0) { reportFeeMonthStatisticsDtos = reportFeeMonthStatisticsInnerServiceSMOImpl.queryFeeBreakdownDetail(reportFeeMonthStatisticsDto); } else { reportFeeMonthStatisticsDtos = new ArrayList<>(); } ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reportFeeMonthStatisticsDto.getRow()), count, reportFeeMonthStatisticsDtos); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); context.setResponseEntity(responseEntity); } } service-report/src/main/java/com/java110/report/dao/IReportFeeMonthStatisticsServiceDao.java
@@ -166,6 +166,25 @@ * @param info 费用月统计信息 * @return 费用月统计数量 */ int queryFeeBreakdownDetailCount(Map info); /** * 查询费用月统计信息(instance过程) * 根据bId 查询费用月统计信息 * * @param info bId 信息 * @return 费用月统计信息 * @throws DAOException DAO异常 */ List<Map> queryFeeBreakdownDetail(Map info) throws DAOException; /** * 查询费用月统计总数 * * @param info 费用月统计信息 * @return 费用月统计数量 */ int queryFeeDetailCount(Map info); service-report/src/main/java/com/java110/report/dao/impl/ReportFeeMonthStatisticsServiceDaoImpl.java
@@ -265,6 +265,27 @@ } @Override public int queryFeeBreakdownDetailCount(Map info) { logger.debug("查询费用月统计数据 入参 info : {}", info); List<Map> businessReportFeeMonthStatisticsInfos = sqlSessionTemplate.selectList("reportFeeMonthStatisticsServiceDaoImpl.queryFeeBreakdownDetailCount", info); if (businessReportFeeMonthStatisticsInfos.size() < 1) { return 0; } return Integer.parseInt(businessReportFeeMonthStatisticsInfos.get(0).get("count").toString()); } @Override public List<Map> queryFeeBreakdownDetail(Map info) throws DAOException { logger.debug("查询费用月统计信息 入参 info : {}", info); List<Map> businessReportFeeMonthStatisticsInfos = sqlSessionTemplate.selectList("reportFeeMonthStatisticsServiceDaoImpl.queryFeeBreakdownDetail", info); return businessReportFeeMonthStatisticsInfos; } @Override public Map queryFeeBreakdownMajor(Map info) { logger.debug("查询费用queryFeeBreakdownMajor 入参 info : {}", info); service-report/src/main/java/com/java110/report/smo/impl/ReportFeeMonthStatisticsInnerServiceSMOImpl.java
@@ -200,6 +200,26 @@ } @Override public int queryFeeBreakdownDetailCount(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) { return reportFeeMonthStatisticsServiceDaoImpl.queryFeeBreakdownDetailCount(BeanConvertUtil.beanCovertMap(reportFeeMonthStatisticsDto)); } @Override public List<ReportFeeMonthStatisticsDto> queryFeeBreakdownDetail(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) { //校验是否传了 分页信息 int page = reportFeeMonthStatisticsDto.getPage(); if (page != PageDto.DEFAULT_PAGE) { reportFeeMonthStatisticsDto.setPage((page - 1) * reportFeeMonthStatisticsDto.getRow()); } List<ReportFeeMonthStatisticsDto> reportFeeMonthStatisticss = BeanConvertUtil.covertBeanList(reportFeeMonthStatisticsServiceDaoImpl.queryFeeBreakdownDetail(BeanConvertUtil.beanCovertMap(reportFeeMonthStatisticsDto)), ReportFeeMonthStatisticsDto.class); return reportFeeMonthStatisticss; } @Override public ReportFeeMonthStatisticsDto queryFeeBreakdownMajor(@RequestBody ReportFeeMonthStatisticsDto reportFeeMonthStatisticsDto) { ReportFeeMonthStatisticsDto reportFeeMonthStatistics = BeanConvertUtil.covertBean( reportFeeMonthStatisticsServiceDaoImpl.queryFeeBreakdownMajor(