wuxw
2024-12-05 919e2989808dd97ba32b4478dbe95851c70fbce5
账户功能优化 支持 按物业费和水电费扣费
31个文件已删除
12个文件已修改
1个文件已添加
4974 ■■■■■ 已修改文件
java110-bean/src/main/java/com/java110/dto/account/AccountDto.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-bean/src/main/java/com/java110/po/account/AccountPo.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-interface/src/main/java/com/java110/intf/common/IMeterMachineV1InnerServiceSMO.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-interface/src/main/java/com/java110/intf/common/INotifyChargeV1InnerServiceSMO.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-interface/src/main/java/com/java110/intf/common/INotifySmartMeterV1InnerServiceSMO.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-acct/src/main/java/com/java110/acct/api/AccountApi.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-acct/src/main/java/com/java110/acct/bmo/account/impl/GetAccountBMOImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-acct/src/main/java/com/java110/acct/cmd/account/CustomSendAcctCmd.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-acct/src/main/java/com/java110/acct/cmd/account/QueryCommunityOwnerAccountCmd.java 132 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-api/src/main/java/com/java110/api/controller/app/charge/NotifyCommonChargeController.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-api/src/main/java/com/java110/api/controller/app/charge/NotifyDingDingChargeController.java 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-api/src/main/java/com/java110/api/controller/app/charge/NotifyKeHangChargeController.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-api/src/main/java/com/java110/api/controller/app/smartWeter/NotifySmartMeterController.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/ChargeCoreImpl.java 505 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/IChargeCore.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/IChargeFactoryAdapt.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/factory/common/CommonChargeMachineFactoryAdapt.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/factory/dingding/DingdingChargeMachineFactoryAdapt.java 193 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/factory/dingding/DingdingChargeUtils.java 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/factory/kehang/KeHangChargeMachineFactoryAdapt.java 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/charge/factory/kehang/KeHangChargeUtils.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/cmd/chargeMachine/ListChargeMachineCmd.java 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/cmd/chargeMachine/StartChargeCmd.java 420 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/cmd/chargeMachine/StopChargeCmd.java 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/cmd/meterMachine/CustomMeterMachineReadCmd.java 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/ISmartMeterCoreRead.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/ISmartMeterFactoryAdapt.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/SmartMeterCoreReadImpl.java 282 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/Tdshuibiao/TqShuiBiaoLoraReadFactoryAdaptImpl.java 260 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/Tdshuibiao/TqShuiBiaoLoraRechargeFactoryAdaptImpl.java 332 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/common/CommonFactoryAdaptImpl.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/tqdianbiao/TdDianBiaoUtil.java 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/tqdianbiao/TqDianBiaoDanxiangDanFeiLvFactoryAdaptImpl.java 251 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/tqdianbiao/TqDianBiaoRemoteDanFeiLvPreFactoryAdaptImpl.java 315 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/zhongkong/WyRequestUtils.java 132 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smartMeter/factory/zhongkong/ZhongkongDianBiaoFactoryAdaptImpl.java 179 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smo/impl/MeterMachineV1InnerServiceSMOImpl.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smo/impl/NotifyChargeV1InnerServiceSMOImpl.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-common/src/main/java/com/java110/common/smo/impl/NotifySmartMeterV1InnerServiceSMOImpl.java 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeCmd.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeePreCmd.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-fee/src/main/java/com/java110/fee/cmd/returnPayFee/UpdateReturnPayFeeCmd.java 62 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-job/src/main/java/com/java110/job/task/smartWeter/SmartMeterReadDegreeTaskTemplate.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-store/src/main/java/com/java110/store/cmd/store/SaveStoreInfoCmd.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
java110-bean/src/main/java/com/java110/dto/account/AccountDto.java
@@ -16,15 +16,11 @@
public class AccountDto extends PageDto implements Serializable {
    /**
     * 2003    现金账户
     * 2004    积分账户
     * 2005    优惠券账户
     * 2006    金币账户
     * 账户类型,2003 通用账户 2004 物业费扣款账户 2005 水电费扣款账户
     */
    public static final String ACCT_TYPE_CASH = "2003";
    public static final String ACCT_TYPE_INTEGRAL = "2004";
    public static final String ACCT_TYPE_COUPON = "2005";
    public static final String ACCT_TYPE_GOLD = "2006";
    public static final String ACCT_TYPE_PROPERTY_FEE = "2004";
    public static final String ACCT_TYPE_METER = "2005";
    //对象类型,6006 个人 7007 商户
@@ -55,6 +51,9 @@
    //积分账户抵扣比例
    private String deductionProportion;
    private String roomId;
    private String roomName;
    public String getAmount() {
        return amount;
@@ -199,4 +198,20 @@
    public void setAcctTypes(String[] acctTypes) {
        this.acctTypes = acctTypes;
    }
    public String getRoomId() {
        return roomId;
    }
    public void setRoomId(String roomId) {
        this.roomId = roomId;
    }
    public String getRoomName() {
        return roomName;
    }
    public void setRoomName(String roomName) {
        this.roomName = roomName;
    }
}
java110-bean/src/main/java/com/java110/po/account/AccountPo.java
@@ -20,6 +20,9 @@
    private String statusCd = "0";
    private String roomId;
    private String roomName;
    public String getAmount() {
        return amount;
    }
@@ -107,4 +110,20 @@
    public void setoLink(String oLink) {
        this.oLink = oLink;
    }
    public String getRoomId() {
        return roomId;
    }
    public void setRoomId(String roomId) {
        this.roomId = roomId;
    }
    public String getRoomName() {
        return roomName;
    }
    public void setRoomName(String roomName) {
        this.roomName = roomName;
    }
}
java110-interface/src/main/java/com/java110/intf/common/IMeterMachineV1InnerServiceSMO.java
@@ -67,17 +67,7 @@
    @RequestMapping(value = "/queryMeterMachinesCount", method = RequestMethod.POST)
    int queryMeterMachinesCount(@RequestBody MeterMachineDto meterMachineDto);
    /**
     * 查询<p>小区楼</p>总记录数
     *
     * @param meterMachineDto 数据对象分享
     * @return 小区下的小区楼记录数
     */
    @RequestMapping(value = "/reChargeMeterMachines", method = RequestMethod.POST)
    ResultVo reChargeMeterMachines(@RequestBody MeterMachineDto meterMachineDto);
    @RequestMapping(value = "/requestReads", method = RequestMethod.POST)
    ResultVo requestReads(@RequestBody List<MeterMachineDto> meterMachineDtos);
    @RequestMapping(value = "/settingMeterMachineRead", method = RequestMethod.POST)
    int settingMeterMachineRead(@RequestBody MeterMachinePo meterMachinePo);
java110-interface/src/main/java/com/java110/intf/common/INotifyChargeV1InnerServiceSMO.java
File was deleted
java110-interface/src/main/java/com/java110/intf/common/INotifySmartMeterV1InnerServiceSMO.java
File was deleted
service-acct/src/main/java/com/java110/acct/api/AccountApi.java
@@ -85,86 +85,6 @@
    }
    /**
     * 查询业主账户
     *
     * @param communityId 小区ID
     * @return
     * @serviceCode /account/queryOwnerAccount
     * @path /app/account/queryOwnerAccount
     */
    @RequestMapping(value = "/queryOwnerAccount", method = RequestMethod.GET)
    public ResponseEntity<String> queryOwnerAccount(@RequestParam(value = "communityId") String communityId,
                                                    @RequestParam(value = "ownerId", required = false) String ownerId,
                                                    @RequestParam(value = "ownerName", required = false) String ownerName,
                                                    @RequestParam(value = "feeId", required = false) String feeId,
                                                    @RequestParam(value = "link", required = false) String link,
                                                    @RequestParam(value = "idCard", required = false) String idCard,
                                                    @RequestParam(value = "acctType", required = false) String acctType,
                                                    @RequestParam(value = "acctTypes", required = false) String[] acctTypes,
                                                    @RequestParam(value = "acctId", required = false) String acctId,
                                                    @RequestParam(value = "page") int page,
                                                    @RequestParam(value = "row") int row,
                                                    @RequestHeader(value = "user-id") String userId,
                                                    @RequestHeader(value = "app-id") String appId) {
        AccountDto accountDto = new AccountDto();
        accountDto.setPage(page);
        accountDto.setRow(row);
        if (!StringUtil.isEmpty(feeId)) {
            FeeDto feeDto = new FeeDto();
            feeDto.setFeeId(feeId);
            List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
            Assert.listOnlyOne(feeDtos, "查询费用信息错误!");
            //获取付费对象类型(3333 房屋 6666 是车位)
            String payerObjType = feeDtos.get(0).getPayerObjType();
            //获取付费对象id
            String payerObjId = feeDtos.get(0).getPayerObjId();
            if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(payerObjType)) { //房屋
                OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
                ownerRoomRelDto.setRoomId(payerObjId);
                List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
                Assert.listOnlyOne(ownerRoomRelDtos, "查询业主房屋关系表错误!");
                ownerId = ownerRoomRelDtos.get(0).getOwnerId();
            } else if (FeeDto.PAYER_OBJ_TYPE_CAR.equals(payerObjType)) {
                OwnerCarDto ownerCarDto = new OwnerCarDto();
                ownerCarDto.setCarId(payerObjId);
                List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
//                Assert.listOnlyOne(ownerCarDtos, "查询业主车辆关系表错误!");
                ownerId = ownerCarDtos.get(0).getOwnerId();
            } else if (FeeDto.PAYER_OBJ_TYPE_CONTRACT.equals(payerObjType)) {
                ContractDto contractDto = new ContractDto();
                contractDto.setContractId(payerObjId);
                List<ContractDto> contractDtos = contractInnerServiceSMOImpl.queryContracts(contractDto);
//                Assert.listOnlyOne(ownerCarDtos, "查询业主车辆关系表错误!");
                ownerId = contractDtos.get(0).getObjId();
            } else {
                ownerId = "-1";
            }
            accountDto.setObjId(ownerId);
        } else {
            accountDto.setObjId(ownerId);
        }
        accountDto.setObjType(AccountDto.OBJ_TYPE_PERSON);
        accountDto.setAcctName(ownerName);
        accountDto.setPartId(communityId);
        accountDto.setAcctType(acctType);
        if(!StringUtil.isNullOrNone(acctTypes)){
            accountDto.setAcctTypes(acctTypes);
        }
        accountDto.setLink(link);
        accountDto.setAcctId(acctId);
        //todo 业主账户安全性校验
        ownerGetDataCheckImpl.checkOwnerAccount(appId, userId, BeanConvertUtil.beanCovertJson(accountDto));
        OwnerDto ownerDto = new OwnerDto();
        ownerDto.setOwnerId(ownerId);
        ownerDto.setCommunityId(communityId);
        ownerDto.setLink(link);
        ownerDto.setIdCard(idCard);
        return getAccountBMOImpl.queryOwnerAccount(accountDto, ownerDto);
    }
    /**
     * 查询业主账户明细
     *
     * @param objId 小区ID
service-acct/src/main/java/com/java110/acct/bmo/account/impl/GetAccountBMOImpl.java
@@ -13,6 +13,7 @@
import com.java110.intf.user.IUserInnerServiceSMO;
import com.java110.po.account.AccountPo;
import com.java110.utils.lock.DistributedLock;
import com.java110.utils.util.ListUtil;
import com.java110.utils.util.StringUtil;
import com.java110.vo.ResultVo;
import org.springframework.beans.factory.annotation.Autowired;
@@ -100,7 +101,7 @@
        //先查询业主
        if (!StringUtil.isEmpty(ownerDto.getIdCard()) || !StringUtil.isEmpty(ownerDto.getLink())) {
            ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
            if (ownerDtos != null && ownerDtos.size() > 0) {
            if (!ListUtil.isNull(ownerDtos)) {
                accountDto.setAcctName("");
                accountDto.setObjId(ownerDtos.get(0).getMemberId());
            }
service-acct/src/main/java/com/java110/acct/cmd/account/CustomSendAcctCmd.java
@@ -23,6 +23,7 @@
import com.java110.utils.exception.CmdException;
import com.java110.utils.lock.DistributedLock;
import com.java110.utils.util.Assert;
import com.java110.utils.util.ListUtil;
import com.java110.utils.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
@@ -120,7 +121,7 @@
        }
        //todo 积分 需要补充一下数据
        if(AccountDto.ACCT_TYPE_INTEGRAL.equals(reqJson.getString("acctType"))) {
        if("2004".equals(reqJson.getString("acctType"))) {
            doGiftIntegral(accountDtos.get(0), reqJson, createUserId);
        }
@@ -163,7 +164,7 @@
        tmpOwnerDto.setLink(reqJson.getString("link"));
        tmpOwnerDto.setCommunityId(reqJson.getString("communityId"));
        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(tmpOwnerDto);
        if (ownerDtos != null && ownerDtos.size() > 0) {
        if (!ListUtil.isNull(ownerDtos)) {
            reqJson.put("objId", ownerDtos.get(0).getMemberId());
            return ownerDtos.get(0).getName();
        }
service-acct/src/main/java/com/java110/acct/cmd/account/QueryCommunityOwnerAccountCmd.java
New file
@@ -0,0 +1,132 @@
package com.java110.acct.cmd.account;
import com.alibaba.fastjson.JSONObject;
import com.java110.acct.bmo.account.IGetAccountBMO;
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.smo.IOwnerGetDataCheck;
import com.java110.dto.account.AccountDto;
import com.java110.dto.contract.ContractDto;
import com.java110.dto.fee.FeeDto;
import com.java110.dto.owner.OwnerCarDto;
import com.java110.dto.owner.OwnerDto;
import com.java110.dto.owner.OwnerRoomRelDto;
import com.java110.intf.fee.IFeeInnerServiceSMO;
import com.java110.intf.store.IContractInnerServiceSMO;
import com.java110.intf.user.IOwnerCarInnerServiceSMO;
import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO;
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import java.text.ParseException;
import java.util.List;
/**
 * 查询账户
 */
@Java110Cmd(serviceCode = "account.queryCommunityOwnerAccount")
public class QueryCommunityOwnerAccountCmd extends Cmd {
    @Autowired
    private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
    @Autowired
    private IOwnerRoomRelInnerServiceSMO ownerRoomRelInnerServiceSMOImpl;
    @Autowired
    private IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl;
    @Autowired
    private IContractInnerServiceSMO contractInnerServiceSMOImpl;
    @Autowired
    private IOwnerGetDataCheck ownerGetDataCheckImpl;
    @Autowired
    private IGetAccountBMO getAccountBMOImpl;
    @Override
    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
        Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区");
        super.validatePageInfo(reqJson);
    }
    @Override
    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
        AccountDto accountDto = BeanConvertUtil.covertBean(reqJson, AccountDto.class);
        hasFeeId(reqJson, accountDto);
        String ownerId = reqJson.getString("ownerId");
        if (!StringUtil.isEmpty(ownerId)) {
            accountDto.setObjId(ownerId);
        }
        accountDto.setObjType(AccountDto.OBJ_TYPE_PERSON);
        String acctTypes = reqJson.getString("acctTypes");
        if (!StringUtil.isNullOrNone(acctTypes)) {
            accountDto.setAcctTypes(acctTypes.split(","));
        }
        //todo 业主账户安全性校验
        // ownerGetDataCheckImpl.checkOwnerAccount(appId, userId, BeanConvertUtil.beanCovertJson(accountDto));
        OwnerDto ownerDto = new OwnerDto();
        ownerDto.setOwnerId(accountDto.getObjId());
        ownerDto.setCommunityId(reqJson.getString("communityId"));
        ownerDto.setLink(reqJson.getString("link"));
        ownerDto.setIdCard(reqJson.getString("idCard"));
        ResponseEntity<String> responseEntity = getAccountBMOImpl.queryOwnerAccount(accountDto, ownerDto);
        context.setResponseEntity(responseEntity);
    }
    private void hasFeeId(JSONObject reqJson, AccountDto accountDto) {
        if (!reqJson.containsKey("feeId")) {
            return;
        }
        String feeId = reqJson.getString("feeId");
        if (StringUtil.isEmpty(feeId)) {
            return;
        }
        String ownerId = "";
        FeeDto feeDto = new FeeDto();
        feeDto.setFeeId(feeId);
        List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
        Assert.listOnlyOne(feeDtos, "查询费用信息错误!");
        //获取付费对象类型(3333 房屋 6666 是车位)
        String payerObjType = feeDtos.get(0).getPayerObjType();
        //获取付费对象id
        String payerObjId = feeDtos.get(0).getPayerObjId();
        if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(payerObjType)) { //房屋
            OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
            ownerRoomRelDto.setRoomId(payerObjId);
            List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
            Assert.listOnlyOne(ownerRoomRelDtos, "查询业主房屋关系表错误!");
            ownerId = ownerRoomRelDtos.get(0).getOwnerId();
        } else if (FeeDto.PAYER_OBJ_TYPE_CAR.equals(payerObjType)) {
            OwnerCarDto ownerCarDto = new OwnerCarDto();
            ownerCarDto.setCarId(payerObjId);
            List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
//                Assert.listOnlyOne(ownerCarDtos, "查询业主车辆关系表错误!");
            ownerId = ownerCarDtos.get(0).getOwnerId();
        } else if (FeeDto.PAYER_OBJ_TYPE_CONTRACT.equals(payerObjType)) {
            ContractDto contractDto = new ContractDto();
            contractDto.setContractId(payerObjId);
            List<ContractDto> contractDtos = contractInnerServiceSMOImpl.queryContracts(contractDto);
//                Assert.listOnlyOne(ownerCarDtos, "查询业主车辆关系表错误!");
            ownerId = contractDtos.get(0).getObjId();
        } else {
            ownerId = "-1";
        }
        accountDto.setObjId(ownerId);
    }
}
service-api/src/main/java/com/java110/api/controller/app/charge/NotifyCommonChargeController.java
File was deleted
service-api/src/main/java/com/java110/api/controller/app/charge/NotifyDingDingChargeController.java
File was deleted
service-api/src/main/java/com/java110/api/controller/app/charge/NotifyKeHangChargeController.java
File was deleted
service-api/src/main/java/com/java110/api/controller/app/smartWeter/NotifySmartMeterController.java
File was deleted
service-common/src/main/java/com/java110/common/charge/ChargeCoreImpl.java
File was deleted
service-common/src/main/java/com/java110/common/charge/IChargeCore.java
File was deleted
service-common/src/main/java/com/java110/common/charge/IChargeFactoryAdapt.java
File was deleted
service-common/src/main/java/com/java110/common/charge/factory/common/CommonChargeMachineFactoryAdapt.java
File was deleted
service-common/src/main/java/com/java110/common/charge/factory/dingding/DingdingChargeMachineFactoryAdapt.java
File was deleted
service-common/src/main/java/com/java110/common/charge/factory/dingding/DingdingChargeUtils.java
File was deleted
service-common/src/main/java/com/java110/common/charge/factory/kehang/KeHangChargeMachineFactoryAdapt.java
File was deleted
service-common/src/main/java/com/java110/common/charge/factory/kehang/KeHangChargeUtils.java
File was deleted
service-common/src/main/java/com/java110/common/cmd/chargeMachine/ListChargeMachineCmd.java
File was deleted
service-common/src/main/java/com/java110/common/cmd/chargeMachine/StartChargeCmd.java
File was deleted
service-common/src/main/java/com/java110/common/cmd/chargeMachine/StopChargeCmd.java
File was deleted
service-common/src/main/java/com/java110/common/cmd/meterMachine/CustomMeterMachineReadCmd.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/ISmartMeterCoreRead.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/ISmartMeterFactoryAdapt.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/SmartMeterCoreReadImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/Tdshuibiao/TqShuiBiaoLoraReadFactoryAdaptImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/Tdshuibiao/TqShuiBiaoLoraRechargeFactoryAdaptImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/common/CommonFactoryAdaptImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/tqdianbiao/TdDianBiaoUtil.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/tqdianbiao/TqDianBiaoDanxiangDanFeiLvFactoryAdaptImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/tqdianbiao/TqDianBiaoRemoteDanFeiLvPreFactoryAdaptImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/zhongkong/WyRequestUtils.java
File was deleted
service-common/src/main/java/com/java110/common/smartMeter/factory/zhongkong/ZhongkongDianBiaoFactoryAdaptImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smo/impl/MeterMachineV1InnerServiceSMOImpl.java
@@ -16,7 +16,6 @@
package com.java110.common.smo.impl;
import com.java110.common.smartMeter.ISmartMeterFactoryAdapt;
import com.java110.common.dao.IMeterMachineV1ServiceDao;
import com.java110.core.log.LoggerFactory;
import com.java110.dto.meter.MeterMachineFactoryDto;
@@ -103,59 +102,9 @@
        return meterMachineV1ServiceDaoImpl.queryMeterMachinesCount(BeanConvertUtil.beanCovertMap(meterMachineDto));
    }
    @Override
    public ResultVo reChargeMeterMachines(@RequestBody MeterMachineDto meterMachineDto) {
        MeterMachineFactoryDto meterMachineFactoryDto = new MeterMachineFactoryDto();
        meterMachineFactoryDto.setFactoryId(meterMachineDto.getImplBean());
        List<MeterMachineFactoryDto> meterMachineFactoryDtos = meterMachineFactoryV1InnerServiceSMOImpl.queryMeterMachineFactorys(meterMachineFactoryDto);
        Assert.listOnlyOne(meterMachineFactoryDtos, "智能水电表厂家不存在");
        ISmartMeterFactoryAdapt smartMeterFactoryAdapt = ApplicationContextFactory.getBean(meterMachineFactoryDtos.get(0).getBeanImpl(), ISmartMeterFactoryAdapt.class);
        if (smartMeterFactoryAdapt == null) {
            throw new CmdException("厂家接口未实现");
        }
        // 通知 厂家适配器数据
        ResultVo resultVo = smartMeterFactoryAdapt.requestRecharge(meterMachineDto, meterMachineDto.getRechargeDegree(),meterMachineDto.getRechargeMoney());
        return resultVo;
    }
    @Override
    public ResultVo requestReads(@RequestBody List<MeterMachineDto> meterMachineDtos) {
        Map<String, List<MeterMachineDto>> maps = new HashMap<>();
        List<MeterMachineDto> tmpMeterMachineDtos = null;
        for (MeterMachineDto meterMachineDto : meterMachineDtos) {
            if (StringUtil.isEmpty(meterMachineDto.getImplBean())) {
                continue;
            }
            if (maps.containsKey(meterMachineDto.getImplBean())) {
                tmpMeterMachineDtos = maps.get(meterMachineDto.getImplBean());
                tmpMeterMachineDtos.add(meterMachineDto);
                continue;
            }
            tmpMeterMachineDtos = new ArrayList<>();
            tmpMeterMachineDtos.add(meterMachineDto);
            maps.put(meterMachineDto.getImplBean(), tmpMeterMachineDtos);
        }
        for (String implBean : maps.keySet()) {
            MeterMachineFactoryDto meterMachineFactoryDto = new MeterMachineFactoryDto();
            meterMachineFactoryDto.setFactoryId(implBean);
            List<MeterMachineFactoryDto> meterMachineFactoryDtos = meterMachineFactoryV1InnerServiceSMOImpl.queryMeterMachineFactorys(meterMachineFactoryDto);
            Assert.listOnlyOne(meterMachineFactoryDtos, "智能水电表厂家不存在");
            ISmartMeterFactoryAdapt smartMeterFactoryAdapt = ApplicationContextFactory.getBean(meterMachineFactoryDtos.get(0).getBeanImpl(), ISmartMeterFactoryAdapt.class);
            if (smartMeterFactoryAdapt == null) {
                continue;
            }
            ResultVo resultVo = smartMeterFactoryAdapt.requestReads(maps.get(implBean));
            logger.debug("抄表返回,{}", resultVo.toString());
        }
        return new ResultVo(ResultVo.CODE_OK, ResultVo.MSG_OK);
    }
    @Override
    public int settingMeterMachineRead(@RequestBody MeterMachinePo meterMachinePo) {
service-common/src/main/java/com/java110/common/smo/impl/NotifyChargeV1InnerServiceSMOImpl.java
File was deleted
service-common/src/main/java/com/java110/common/smo/impl/NotifySmartMeterV1InnerServiceSMOImpl.java
File was deleted
service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeCmd.java
@@ -339,7 +339,7 @@
            JSONObject param = jsonArray.getJSONObject(columnIndex);
            //账户金额
            BigDecimal amount = new BigDecimal(param.getString("amount"));
            if (AccountDto.ACCT_TYPE_INTEGRAL.equals(param.getString("acctType"))) { //积分账户
            if ("2004".equals(param.getString("acctType"))) { //积分账户
                //获取最大抵扣积分
                BigDecimal maximumNumber = new BigDecimal(param.getString("maximumNumber"));
                //获取积分抵扣
service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeePreCmd.java
@@ -296,7 +296,7 @@
        accountDto.setAcctIds(acctIds.toArray(new String[acctIds.size()]));
        List<AccountDto> accountDtos = accountInnerServiceSMOImpl.queryAccounts(accountDto);
        if (accountDtos == null || accountDtos.size() < 1) {
        if (ListUtil.isNull(accountDtos)) {
            reqJson.put("deductionAmount", 0.0);
            return 0.0;
        }
@@ -327,7 +327,7 @@
                    dedAmount = dedAmount.subtract(amount);
                }
                money = money.add(cashMoney);
            } else if (AccountDto.ACCT_TYPE_INTEGRAL.equals(tmpAccountDto.getAcctType()) && compare > 0) { //积分账户
            } else if ("2004".equals(tmpAccountDto.getAcctType()) && compare > 0) { //积分账户
                //积分账户最大使用积分
                String maximumNumber = CommunitySettingFactory.getValue(reqJson.getString("communityId"), MAXIMUM_NUMBER);
                BigDecimal maxNumber = new BigDecimal(maximumNumber);
service-fee/src/main/java/com/java110/fee/cmd/returnPayFee/UpdateReturnPayFeeCmd.java
@@ -357,37 +357,37 @@
            }
            if ("1003".equals(param.getString("state"))) {
                //积分账户抵扣比例
                BigDecimal deductionProportion = new BigDecimal(CommunitySettingFactory.getValue(reqJson.getString("communityId"), DEDUCTION_PROPORTION));
                BigDecimal returnAmount1 = new BigDecimal(returnAmount);
                BigDecimal money = returnAmount1.multiply(deductionProportion);
                accountDto.setAcctType(AccountDto.ACCT_TYPE_INTEGRAL); //2004  积分账户
                List<AccountDto> accountDtos = accountInnerServiceSMOImpl.queryAccounts(accountDto);
                Assert.listOnlyOne(accountDtos, "查询业主积分账户错误!");
                BigDecimal amount = new BigDecimal(accountDtos.get(0).getAmount());
                BigDecimal newAmount = amount.add(money);
                AccountPo accountPo = new AccountPo();
                accountPo.setAcctId(accountDtos.get(0).getAcctId());
                accountPo.setAmount(String.valueOf(newAmount));
                int flag = accountInnerServiceSMOImpl.updateAccount(accountPo);
                if (flag < 1) {
                    throw new IllegalArgumentException("更新业主积分账户失败!");
                }
                AccountDetailPo accountDetailPo = new AccountDetailPo();
                accountDetailPo.setDetailId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_detailId));
                accountDetailPo.setAcctId(accountDtos.get(0).getAcctId());
                accountDetailPo.setDetailType("1001"); //1001 转入 2002 转出
                accountDetailPo.setRelAcctId("-1");
                accountDetailPo.setAmount(money.toString());
                accountDetailPo.setObjType("6006"); //6006 个人 7007 商户
                accountDetailPo.setObjId(ownerId);
                accountDetailPo.setOrderId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_orderId));
                accountDetailPo.setbId("-1");
                accountDetailPo.setRemark("积分账户退费");
                accountDetailPo.setCreateTime(new Date());
                int i = accountDetailInnerServiceSMOImpl.saveAccountDetails(accountDetailPo);
                if (i < 1) {
                    throw new IllegalArgumentException("保存业主积分账户明细失败!");
                }
//                BigDecimal deductionProportion = new BigDecimal(CommunitySettingFactory.getValue(reqJson.getString("communityId"), DEDUCTION_PROPORTION));
//                BigDecimal returnAmount1 = new BigDecimal(returnAmount);
//                BigDecimal money = returnAmount1.multiply(deductionProportion);
//                accountDto.setAcctType(AccountDto.ACCT_TYPE_INTEGRAL); //2004  积分账户
//                List<AccountDto> accountDtos = accountInnerServiceSMOImpl.queryAccounts(accountDto);
//                Assert.listOnlyOne(accountDtos, "查询业主积分账户错误!");
//                BigDecimal amount = new BigDecimal(accountDtos.get(0).getAmount());
//                BigDecimal newAmount = amount.add(money);
//                AccountPo accountPo = new AccountPo();
//                accountPo.setAcctId(accountDtos.get(0).getAcctId());
//                accountPo.setAmount(String.valueOf(newAmount));
//                int flag = accountInnerServiceSMOImpl.updateAccount(accountPo);
//                if (flag < 1) {
//                    throw new IllegalArgumentException("更新业主积分账户失败!");
//                }
//                AccountDetailPo accountDetailPo = new AccountDetailPo();
//                accountDetailPo.setDetailId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_detailId));
//                accountDetailPo.setAcctId(accountDtos.get(0).getAcctId());
//                accountDetailPo.setDetailType("1001"); //1001 转入 2002 转出
//                accountDetailPo.setRelAcctId("-1");
//                accountDetailPo.setAmount(money.toString());
//                accountDetailPo.setObjType("6006"); //6006 个人 7007 商户
//                accountDetailPo.setObjId(ownerId);
//                accountDetailPo.setOrderId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_orderId));
//                accountDetailPo.setbId("-1");
//                accountDetailPo.setRemark("积分账户退费");
//                accountDetailPo.setCreateTime(new Date());
//                int i = accountDetailInnerServiceSMOImpl.saveAccountDetails(accountDetailPo);
//                if (i < 1) {
//                    throw new IllegalArgumentException("保存业主积分账户明细失败!");
//                }
            }
service-job/src/main/java/com/java110/job/task/smartWeter/SmartMeterReadDegreeTaskTemplate.java
@@ -76,7 +76,7 @@
        }
        try {
            meterMachineV1InnerServiceSMOImpl.requestReads(tmpMeterMachineDtos);
            //meterMachineV1InnerServiceSMOImpl.requestReads(tmpMeterMachineDtos);
        } catch (Exception e) {
            logger.error("抄表失败", e);
service-store/src/main/java/com/java110/store/cmd/store/SaveStoreInfoCmd.java
@@ -110,7 +110,7 @@
        if (StoreTypeConstant.STORE_TYPE_MALL.equals(businessStoreObj.getString("storeTypeCd"))) {
            //物品调拨流程
            addAccount(reqJson, AccountDto.ACCT_TYPE_CASH);
            addAccount(reqJson, AccountDto.ACCT_TYPE_INTEGRAL);
            //addAccount(reqJson, AccountDto.ACCT_TYPE_INTEGRAL);
//            businesses.add(storeBMOImpl.addAccount(paramObj,AccountDto.ACCT_TYPE_GOLD));
        }
        //赋权