cgf
2025-09-02 4ce807bb99088dc6f41262046830fc872e772be4
折扣已完成现有需求2025/08/09
5个文件已添加
261 ■■■■■ 已修改文件
service-fee/src/main/java/com/java110/fee/cmd/fee/QueryReportFeeCmd.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/cmd/feePrintPage/ListFeePrintPageListCmd.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/dao/IReportFeeServiceDao.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/dao/impl/IReportFeeServiceDaoImpl.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/smo/impl/ReportFeeInnerServiceSMOImpl.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/cmd/fee/QueryReportFeeCmd.java
New file
@@ -0,0 +1,52 @@
package com.java110.fee.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.dto.community.CommunityDto;
import com.java110.intf.community.ICommunityInnerServiceSMO;
import com.java110.intf.fee.IReportFeeInnerServiceSMO;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
import com.java110.vo.FeeQueryParams;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
@Java110Cmd(serviceCode = "fee.queryReportFeeCmd")
public class QueryReportFeeCmd extends Cmd {
    @Autowired
    private IReportFeeInnerServiceSMO reportFeeInnerServiceSMOImpl;
    @Autowired
    private ICommunityInnerServiceSMO communityInnerServiceSMOImpl;
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
        Assert.hasKey(reqJson, "communityId", "请求报文中未包含小区编号");
    }
    @Override
    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
        CommunityDto communityDto = new CommunityDto();
        communityDto.setCommunityId(reqJson.getString("communityId"));
        List<CommunityDto> communityDtos = communityInnerServiceSMOImpl.queryCommunitys(communityDto);
        FeeQueryParams feeQueryParams = new FeeQueryParams();
        feeQueryParams.setCommunityId(reqJson.getString("communityId"));
        feeQueryParams.setStartYear(communityDtos.get(0).getCreateTime().getYear()+1900);
        if(reqJson.containsKey("startYear")){
            feeQueryParams.setStartYear(Integer.parseInt(reqJson.getString("startYear")));
        }
        int currentYear = java.time.Year.now().getValue();
        feeQueryParams.setEndYear(currentYear + 2);
        List<Map> result = reportFeeInnerServiceSMOImpl.repostPaidInFee(feeQueryParams);
        context.setResponseEntity(new ResponseEntity<>(result, HttpStatus.OK));
    }
}
service-fee/src/main/java/com/java110/fee/cmd/feePrintPage/ListFeePrintPageListCmd.java
New file
@@ -0,0 +1,81 @@
/*
 * Copyright 2017-2020 吴学文 and java110 team.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.java110.fee.cmd.feePrintPage;
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.core.log.LoggerFactory;
import com.java110.dto.fee.FeePrintPageDto;
import com.java110.intf.fee.IFeePrintPageV1InnerServiceSMO;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.vo.ResultVo;
import org.slf4j.Logger;
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;
/**
 * 类表述:查询
 * 服务编码:feePrintPage.listFeePrintPage
 * 请求路劲:/app/feePrintPage.ListFeePrintPage
 * add by 吴学文 at 2021-09-16 22:26:04 mail: 928255095@qq.com
 * open source address: https://gitee.com/wuxw7/MicroCommunity
 * 官网:http://www.homecommunity.cn
 * 温馨提示:如果您对此文件进行修改 请不要删除原有作者及注释信息,请补充您的 修改的原因以及联系邮箱如下
 * // modify by 张三 at 2021-09-12 第10行在某种场景下存在某种bug 需要修复,注释10至20行 加入 20行至30行
 */
@Java110Cmd(serviceCode = "feePrintPage.listFeePrintPageList")
public class ListFeePrintPageListCmd extends Cmd {
  private static Logger logger = LoggerFactory.getLogger(ListFeePrintPageListCmd.class);
    @Autowired
    private IFeePrintPageV1InnerServiceSMO feePrintPageV1InnerServiceSMOImpl;
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
        super.validatePageInfo(reqJson);
    }
    @Override
    public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
           FeePrintPageDto feePrintPageDto = BeanConvertUtil.covertBean(reqJson, FeePrintPageDto.class);
           int count = feePrintPageV1InnerServiceSMOImpl.queryFeePrintPagesCount(feePrintPageDto);
           List<FeePrintPageDto> feePrintPageDtos = null;
           if (count > 0) {
               feePrintPageDtos = feePrintPageV1InnerServiceSMOImpl.queryFeePrintPages(feePrintPageDto);
           } else {
               feePrintPageDtos = new ArrayList<>();
           }
           ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, feePrintPageDtos);
           ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
           cmdDataFlowContext.setResponseEntity(responseEntity);
    }
}
service-fee/src/main/java/com/java110/fee/dao/IReportFeeServiceDao.java
New file
@@ -0,0 +1,18 @@
package com.java110.fee.dao;
import com.java110.dto.report.ReportQueryRecord;
import com.java110.vo.FeeQueryParams;
import org.springframework.http.ResponseEntity;
import java.util.List;
import java.util.Map;
public interface IReportFeeServiceDao {
    List<Map> repostPaidInFee(FeeQueryParams feeQueryParams);
    List<Map> repostPaidInFeeTwo(FeeQueryParams feeQueryParams);
    int saveReport(Map map);
    List<ReportQueryRecord> queryReport(Map map);
}
service-fee/src/main/java/com/java110/fee/dao/impl/IReportFeeServiceDaoImpl.java
New file
@@ -0,0 +1,71 @@
package com.java110.fee.dao.impl;
import com.java110.core.base.dao.BaseServiceDao;
import com.java110.core.log.LoggerFactory;
import com.java110.dto.report.ReportQueryRecord;
import com.java110.fee.dao.IInitializePayFeeServiceDao;
import com.java110.fee.dao.IReportFeeServiceDao;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.vo.FeeQueryParams;
import org.slf4j.Logger;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
@Service("iReportFeeServiceDaoImpl")
public class IReportFeeServiceDaoImpl extends BaseServiceDao implements IReportFeeServiceDao {
    private static Logger logger = LoggerFactory.getLogger(InitializePayFeeServiceDaoImpl.class);
    @Override
    public List<Map> repostPaidInFee(FeeQueryParams feeQueryParams) {
        List<Integer> yearList = new ArrayList<>();
        for (int year = feeQueryParams.getStartYear(); year <= feeQueryParams.getEndYear(); year++) {
            yearList.add(year);
        }
        List<String> monthList = IntStream.rangeClosed(1, 12)
                .mapToObj(month -> String.format("%02d", month))
                .collect(Collectors.toList());
        Map<String, Object> params = new HashMap<>();
        params.put("communityId", feeQueryParams.getCommunityId());
        params.put("startYear", feeQueryParams.getStartYear());
        params.put("monthList", monthList);
        params.put("endYear", feeQueryParams.getEndYear());
        params.put("yearList", yearList);
        return sqlSessionTemplate.selectList("reportFeeServiceDaoImpl.repostInFee", params);
    }
    @Override
    public List<Map> repostPaidInFeeTwo(FeeQueryParams feeQueryParams) {
        List<Integer> yearList = new ArrayList<>();
        for (int year = feeQueryParams.getStartYear(); year <= feeQueryParams.getEndYear(); year++) {
            yearList.add(year);
        }
        List<String> monthList = IntStream.rangeClosed(1, 12)
                .mapToObj(month -> String.format("%02d", month))
                .collect(Collectors.toList());
        Map<String, Object> params = new HashMap<>();
        params.put("communityId", feeQueryParams.getCommunityId());
        params.put("startYear", feeQueryParams.getStartYear());
        params.put("monthList", monthList);
        params.put("endYear", feeQueryParams.getEndYear());
        params.put("yearList", yearList);
        return sqlSessionTemplate.selectList("reportFeeServiceDaoImpl.repostInFeeTwo", params);
    }
    @Override
    public int saveReport(Map map) {
        return sqlSessionTemplate.insert("reportFeeServiceDaoImpl.saveReport", map);
    }
    @Override
    public List<ReportQueryRecord> queryReport(Map map) {
        return BeanConvertUtil.covertBeanList(sqlSessionTemplate.selectList("reportFeeServiceDaoImpl.queryReport", map), ReportQueryRecord.class);
    }
}
service-fee/src/main/java/com/java110/fee/smo/impl/ReportFeeInnerServiceSMOImpl.java
New file
@@ -0,0 +1,39 @@
package com.java110.fee.smo.impl;
import com.java110.core.base.smo.BaseServiceSMO;
import com.java110.dto.report.ReportQueryRecord;
import com.java110.fee.dao.IReportFeeServiceDao;
import com.java110.intf.fee.IReportFeeInnerServiceSMO;
import com.java110.vo.FeeQueryParams;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
public class ReportFeeInnerServiceSMOImpl extends BaseServiceSMO implements IReportFeeInnerServiceSMO {
    @Autowired
    private IReportFeeServiceDao iReportFeeServiceDao;
    @Override
    public List<Map> repostPaidInFee(FeeQueryParams feeQueryParams) {
        return iReportFeeServiceDao.repostPaidInFee(feeQueryParams);
    }
    @Override
    public List<Map> repostPaidInFeeTwo(FeeQueryParams feeQueryParams) {
        return iReportFeeServiceDao.repostPaidInFeeTwo(feeQueryParams);
    }
    @Override
    public int saveReport(Map map) {
        return iReportFeeServiceDao.saveReport(map);
    }
    @Override
    public List<ReportQueryRecord> queryReport(Map map) {
        return iReportFeeServiceDao.queryReport(map);
    }
}