java110-bean/src/main/java/com/java110/dto/PropertyWhiteListFlowDto.java
@@ -32,6 +32,35 @@ private String chargeStart; // 收费起(格式YYYY-MM-DD) private String chargeEnd; // 收费止(格式YYYY-MM-DD) private String feeYear; private Integer row; private Integer page; public Integer getPage() { return page; } public void setPage(Integer page) { this.page = page; } public Integer getRow() { return row; } public void setRow(Integer row) { this.row = row; } public String getFeeYear() { return feeYear; } public void setFeeYear(String feeYear) { this.feeYear = feeYear; } // 无参构造函数 public PropertyWhiteListFlowDto() { } java110-db/src/main/resources/mapper/PropertyWhiteListFlowDaoImplMapper.xml
File was deleted java110-db/src/main/resources/mapper/fee/PropertyWhiteListFlowDaoImplMapper.xml
New file @@ -0,0 +1,190 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="propertyWhiteListFlowDaoImplMapper"> <insert id="savePropertyWhiteListFlow" parameterType="Map"> INSERT INTO property_white_list_flow <trim prefix="(" suffix=")" suffixOverrides=","> charge_time, <if test="invoiceReceiptNo != null">invoice_receipt_no,</if> <if test="roomId != null">room_id,</if> <if test="propertyAddress != null">property_address,</if> <if test="doorRoomNum != null">door_room_num,</if> <if test="secondaryFeeTypeCd != null">secondary_fee_type_cd,</if> <if test="chargeAmount != null">charge_amount,</if> <if test="charger != null">charger,</if> <if test="bankDepositDate != null">bank_deposit_date,</if> <if test="bankDepositor != null">bank_depositor,</if> <if test="splitBankDepositAmount != null">split_bank_deposit_amount,</if> <if test="bankDepositAmount != null">bank_deposit_amount,</if> <if test="checkAmount != null">check_amount,</if> <if test="whiteListArchiveNo != null">white_list_archive_no,</if> <if test="sheetCount != null">sheet_count,</if> <if test="financialReceiver != null">financial_receiver,</if> <if test="inputTime != null">input_time,</if> <if test="inputPerson != null">input_person,</if> <if test="orderNo != null">order_no,</if> <if test="licensePlate != null">license_plate,</if> <if test="category22 != null">category_22,</if> <if test="chargeStart != null">charge_start,</if> <if test="chargeEnd != null">charge_end</if> </trim> VALUES <trim prefix="(" suffix=")" suffixOverrides=","> #{chargeTime}, <if test="invoiceReceiptNo != null">#{invoiceReceiptNo},</if> <if test="roomId != null">#{roomId},</if> <if test="propertyAddress != null">#{propertyAddress},</if> <if test="doorRoomNum != null">#{doorRoomNum},</if> <if test="secondaryFeeTypeCd != null">#{secondaryFeeTypeCd},</if> <if test="chargeAmount != null">#{chargeAmount},</if> <if test="charger != null">#{charger},</if> <if test="bankDepositDate != null">#{bankDepositDate},</if> <if test="bankDepositor != null">#{bankDepositor},</if> <if test="splitBankDepositAmount != null">#{splitBankDepositAmount},</if> <if test="bankDepositAmount != null">#{bankDepositAmount},</if> <if test="checkAmount != null">#{checkAmount},</if> <if test="whiteListArchiveNo != null">#{whiteListArchiveNo},</if> <if test="sheetCount != null">#{sheetCount},</if> <if test="financialReceiver != null">#{financialReceiver},</if> <if test="inputTime != null">#{inputTime},</if> <if test="inputPerson != null">#{inputPerson},</if> <if test="orderNo != null">#{orderNo},</if> <if test="licensePlate != null">#{licensePlate},</if> <if test="category22 != null">#{category22},</if> <if test="chargeStart != null">#{chargeStart},</if> <if test="chargeEnd != null">#{chargeEnd}</if> </trim> </insert> <select id="queryPropertyWhiteListFlow" parameterType="Map" resultType="Map"> SELECT id, charge_time AS chargeTime, invoice_receipt_no AS invoiceReceiptNo, room_id AS roomId, property_address AS propertyAddress, door_room_num AS doorRoomNum, secondary_fee_type_cd AS secondaryFeeTypeCd, charge_amount AS chargeAmount, charger, bank_deposit_date AS bankDepositDate, bank_depositor AS bankDepositor, split_bank_deposit_amount AS splitBankDepositAmount, bank_deposit_amount AS bankDepositAmount, check_amount AS checkAmount, white_list_archive_no AS whiteListArchiveNo, sheet_count AS sheetCount, financial_receiver AS financialReceiver, input_time AS inputTime, input_person AS inputPerson, order_no AS orderNo, license_plate AS licensePlate, category_22 AS category22, charge_start AS chargeStart, charge_end AS chargeEnd FROM property_white_list_flow <where> <!-- 收费日期范围查询 --> <if test="startChargeTime != null"> AND charge_time >= #{startChargeTime} </if> <if test="endChargeTime != null"> AND charge_time <= #{endChargeTime} </if> <!-- 房号查询 --> <if test="roomId != null and roomId != ''"> AND room_id = #{roomId} </if> <!-- 收费内容查询 --> <if test="secondaryFeeTypeCd != null and secondaryFeeTypeCd != ''"> AND secondary_fee_type_cd = #{secondaryFeeTypeCd} </if> <!-- 收费金额范围查询 --> <if test="minChargeAmount != null"> AND charge_amount >= #{minChargeAmount} </if> <if test="maxChargeAmount != null"> AND charge_amount <= #{maxChargeAmount} </if> <!-- 单号查询 --> <if test="orderNo != null and orderNo != ''"> AND order_no = #{orderNo} </if> <!-- 车牌号查询(适用于停车费等场景) --> <if test="licensePlate != null and licensePlate != ''"> AND license_plate = #{licensePlate} </if> <if test="category22 != null and category22 != ''"> AND category_22 = #{category22} </if> <if test="feeYear != null and feeYear != ''"> and YEAR(charge_time) = #{feeYear} </if> </where> <!-- 排序 --> <if test="orderBy != null and orderBy != ''"> ORDER BY ${orderBy} </if> <if test="orderBy == null"> ORDER BY charge_time DESC </if> <if test="page != -1 and page != null "> limit #{page}, #{row} </if> </select> <select id="countPropertyWhiteListFlow" parameterType="Map" resultType="Map"> SELECT count(1) FROM property_white_list_flow <where> <!-- 收费日期范围查询 --> <if test="startChargeTime != null"> AND charge_time >= #{startChargeTime} </if> <if test="endChargeTime != null"> AND charge_time <= #{endChargeTime} </if> <!-- 房号查询 --> <if test="roomId != null and roomId != ''"> AND room_id = #{roomId} </if> <!-- 收费内容查询 --> <if test="secondaryFeeTypeCd != null and secondaryFeeTypeCd != ''"> AND secondary_fee_type_cd = #{secondaryFeeTypeCd} </if> <!-- 收费金额范围查询 --> <if test="minChargeAmount != null"> AND charge_amount >= #{minChargeAmount} </if> <if test="maxChargeAmount != null"> AND charge_amount <= #{maxChargeAmount} </if> <!-- 单号查询 --> <if test="orderNo != null and orderNo != ''"> AND order_no = #{orderNo} </if> <!-- 车牌号查询(适用于停车费等场景) --> <if test="licensePlate != null and licensePlate != ''"> AND license_plate = #{licensePlate} </if> <if test="category22 != null and category22 != ''"> AND category_22 = #{category22} </if> <if test="feeYear != null and feeYear != ''"> and YEAR(charge_time) = #{feeYear} </if> </where> </select> </mapper> java110-interface/src/main/java/com/java110/intf/IImportPropertyWhiteListfFlowServiceSMO.java
@@ -20,6 +20,9 @@ **/ @FeignClient(name = "community-service", configuration = {FeignConfiguration.class}) public interface IImportPropertyWhiteListfFlowServiceSMO { int savePropertyWhiteListFlow(@RequestBody List<PropertyWhiteListFlowDto> importOwnerRoomDtos); int savePropertyWhiteListFlow(@RequestBody PropertyWhiteListFlowDto importOwnerRoomDtos); List<PropertyWhiteListFlowDto> queryPropertyWhiteListFlow(@RequestBody PropertyWhiteListFlowDto importOwnerRoomDtos); int countPropertyWhiteListFlow(PropertyWhiteListFlowDto white); } service-acct/src/main/java/com/java110/acct/cmd/payment/PropertyWhiteListFlowCmd.java
New file @@ -0,0 +1,53 @@ package com.java110.acct.cmd.payment; 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.PropertyWhiteListFlowDto; import com.java110.dto.payment.PaymentKeyDto; import com.java110.intf.IImportPropertyWhiteListfFlowServiceSMO; import com.java110.intf.acct.IPaymentKeyV1InnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.BeanConvertUtil; import com.java110.vo.ResultVo; 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; @Java110Cmd(serviceCode = "payment.propertyWhiteListFlowCmd") public class PropertyWhiteListFlowCmd extends Cmd{ @Autowired private IImportPropertyWhiteListfFlowServiceSMO importPropertyWhiteListfFlowServiceSMO; @Override public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException, ParseException { } @Override public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException, ParseException { if(!reqJson.containsKey("row")){ reqJson.put("row",1); } PropertyWhiteListFlowDto white = BeanConvertUtil.covertBean(reqJson, PropertyWhiteListFlowDto.class); int count = importPropertyWhiteListfFlowServiceSMO.countPropertyWhiteListFlow(white); if(count == 0){ ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, null); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); cmdDataFlowContext.setResponseEntity(responseEntity); } else{ List<PropertyWhiteListFlowDto> dtoList = importPropertyWhiteListfFlowServiceSMO.queryPropertyWhiteListFlow(white); ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, dtoList); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); cmdDataFlowContext.setResponseEntity(responseEntity); } } } service-api/src/main/java/com/java110/api/importData/adapt/ImportPropertyWhiteListfFlowAdapt.java
@@ -59,7 +59,12 @@ Assert.hasValue(os[0], (osIndex + 1) + "行收费日期不能为空"); white = new PropertyWhiteListFlowDto(); white.setChargeTime(os[0].toString()); String chargeTime = excelDoubleToDate(os[0].toString()); String changeStart = os[21] == null ? null : excelDoubleToDate(os[21].toString()); String changeEnd = os[22] == null ? null : excelDoubleToDate(os[22].toString()); String bankDepositDate = os[8] == null ? null : excelDoubleToDate(os[8].toString()); String inputTime = os[16] == null ? null : excelDoubleToDate(os[16].toString()); white.setChargeTime(chargeTime); white.setInvoiceReceiptNo(os[1] == null ? null : os[1].toString()); white.setRoomId(os[2] == null ? null : os[2].toString()); white.setPropertyAddress(os[3] == null ? null : os[3].toString()); @@ -67,16 +72,21 @@ white.setSecondaryFeeTypeCd(os[5] == null ? null : os[5].toString()); white.setChargeAmount(os[6] == null ? null : os[6].toString()); white.setCharger(os[7] == null ? null : os[7].toString()); white.setBankDepositDate(os[8] == null ? null : os[8].toString()); white.setSheetCount(os[9] == null ? null : os[9].toString()); white.setFinancialReceiver(os[10] == null ? null : os[10].toString()); white.setInputTime(os[11] == null ? null : os[11].toString()); white.setInputPerson(os[12] == null ? null : os[12].toString()); white.setOrderNo(os[13] == null ? null : os[13].toString()); white.setLicensePlate(os[14] == null ? null : os[14].toString()); white.setCategory22(os[15] == null ? null : os[15].toString()); white.setChargeStart(os[16] == null ? null : os[16].toString()); white.setChargeEnd(os[17] == null ? null : os[17].toString()); white.setBankDepositDate(bankDepositDate); white.setBankDepositor(os[9] == null ? null : os[9].toString()); white.setSplitBankDepositAmount(os[10] == null ? null : os[10].toString()); white.setBankDepositAmount(os[11] == null ? null : os[11].toString()); white.setCheckAmount(os[12] == null ? null : os[12].toString()); white.setWhiteListArchiveNo(os[13] == null ? null : os[13].toString()); white.setSheetCount(os[14] == null ? null : os[14].toString()); white.setFinancialReceiver(os[15] == null ? null : os[15].toString()); white.setInputTime(inputTime); white.setInputPerson(os[17] == null ? null : os[17].toString()); white.setOrderNo(os[18] == null ? null : os[18].toString()); white.setLicensePlate(os[19] == null ? null : os[19].toString()); white.setCategory22(os[20] == null ? null : os[20].toString()); white.setChargeStart(changeStart); white.setChargeEnd(changeEnd); whiteLists.add(white); } } service-community/src/main/java/com/java110/community/smo/impl/IImportPropertyWhiteListfFlowServiceSMOImpl.java
@@ -15,7 +15,9 @@ import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Map; /** * 小区服务内部类 @@ -28,20 +30,23 @@ protected SqlSessionTemplate sqlSessionTemplate; @Override public int savePropertyWhiteListFlow(@RequestBody List<PropertyWhiteListFlowDto> importOwnerRoomDtos) { public int savePropertyWhiteListFlow(@RequestBody PropertyWhiteListFlowDto importOwnerRoomDto) { return sqlSessionTemplate.insert("propertyWhiteListFlowDaoImplMapper.savePropertyWhiteListFlow",BeanConvertUtil.beanCovertMap(importOwnerRoomDto)); } int successCount = 0; if (importOwnerRoomDtos == null || importOwnerRoomDtos.size() < 1) { @Override public List<PropertyWhiteListFlowDto> queryPropertyWhiteListFlow(PropertyWhiteListFlowDto importOwnerRoomDtos) { importOwnerRoomDtos.setPage((importOwnerRoomDtos.getPage()-1)* importOwnerRoomDtos.getRow()); return sqlSessionTemplate.selectList("propertyWhiteListFlowDaoImplMapper.queryPropertyWhiteListFlow",BeanConvertUtil.beanCovertMap(importOwnerRoomDtos)); } public int countPropertyWhiteListFlow(PropertyWhiteListFlowDto importOwnerRoomDtos) { List<Map> businessPaymentPoolConfigInfos = sqlSessionTemplate.selectList("propertyWhiteListFlowDaoImplMapper.countPropertyWhiteListFlow", BeanConvertUtil.beanCovertMap(importOwnerRoomDtos)); if (businessPaymentPoolConfigInfos.size() < 1) { return 0; } // 1.0 查看 楼栋是否存在 for (PropertyWhiteListFlowDto importOwnerRoomDto : importOwnerRoomDtos) { successCount += sqlSessionTemplate.insert("propertyWhiteListFlowDaoImplMapper.savePropertyWhiteListFlow",BeanConvertUtil.beanCovertMap(importOwnerRoomDto)); } return successCount; return Integer.parseInt(businessPaymentPoolConfigInfos.get(0).get("count(1)").toString()); } } service-community/src/main/resources/application.yml
@@ -1,3 +1,3 @@ spring: profiles: active: dev active: devlocal service-job/src/main/java/com/java110/job/importData/adapt/ImportPropertyWhiteListfFlowQueueDataAdapt.java
@@ -1,8 +1,10 @@ package com.java110.job.importData.adapt; import com.alibaba.fastjson.JSONObject; import com.java110.dto.PropertyWhiteListFlowDto; import com.java110.dto.importData.ImportOwnerRoomDto; import com.java110.dto.log.AssetImportLogDetailDto; import com.java110.intf.IImportPropertyWhiteListfFlowServiceSMO; import com.java110.intf.community.IImportOwnerRoomInnerServiceSMO; import com.java110.job.importData.DefaultImportData; import com.java110.job.importData.IImportDataAdapt; @@ -22,7 +24,7 @@ @Autowired private IImportOwnerRoomInnerServiceSMO importOwnerRoomInnerServiceSMOImpl; private IImportPropertyWhiteListfFlowServiceSMO importPropertyWhiteListfFlowServiceSMOImpl; @Override @@ -53,8 +55,8 @@ */ private void doImportData(AssetImportLogDetailDto assetImportLogDetailDto) { JSONObject data = JSONObject.parseObject(assetImportLogDetailDto.getContent()); ImportOwnerRoomDto importOwnerRoomDto = BeanConvertUtil.covertBean(data, ImportOwnerRoomDto.class); int flag = importOwnerRoomInnerServiceSMOImpl.saveOwnerRoom(importOwnerRoomDto); PropertyWhiteListFlowDto whites = BeanConvertUtil.covertBean(data, PropertyWhiteListFlowDto.class); int flag = importPropertyWhiteListfFlowServiceSMOImpl.savePropertyWhiteListFlow(whites); if (flag < 1) { throw new IllegalArgumentException("导入失败"); } service-job/src/main/java/com/java110/job/importData/adapt/ImportRoomFeeQueueDataAdapt.java
@@ -208,6 +208,9 @@ } payFeePo.setUserId(importRoomFee.getUserId()); payFeePo.setIncomeObjId(importRoomFee.getStoreId()); FeeConfigDto payFeePo1 = new FeeConfigDto(); payFeePo1.setFeeTypeCd(importRoomFee.getFeeTypeCd()); List<FeeConfigDto> feeConfigDtos1 = payFeeConfigV1InnerServiceSMOImpl.queryPayFeeConfigs(payFeePo1); payFeePo.setFeeTypeCd(feeConfigDtos.get(0).getFeeTypeCd()); payFeePo.setFeeFlag(feeConfigDtos.get(0).getFeeFlag()); payFeePo.setAmount(importRoomFee.getAmount()); springboot/src/main/resources/application.yml
@@ -1,3 +1,3 @@ spring: profiles: active: debug active: dev