购买预付卡的账务处理

时间:2023/10/9 11:54:04 编辑:福途教育 标签:会计师

榜单说明:福途教育网榜单是基于互联网大数据统计及人为根据市场和参数条件变化的分析而得出本站站内排序,排名不分先后,仅供参考。

2024年【会计师】申请条件/费用/专业咨询 >>

会计师申请条件是什么?会计师费用是多少?会计师专业都有哪些?

点击咨询

    本文解答了关于《购买预付卡的账务处理》相关内容,同时关于1、购买预付卡的账务处理,2、购买预付卡的账务处理流程,3、购买预付卡如何做账,4、购买预付卡计入什么科目,5、购买预付款卡怎么做账,的相关问答本篇文章福途教育网小编也整理了进来,希望对您有帮助。

    购买预付卡的账务处理

    购买预付卡的账务处理

    /**

    * 购买预付卡的账务处理

    * @param acctId

    * @param realPayFee

    */

    private void processPbocBuyCard(Long acctId,Long realPayFee)throws Exception{

    try {

    IAccountRelatQry accountQry = null;

    IAccount acctBean= null;

    //查询账户信息

    accountQry = (IAccountRelatQry)BscServiceUtils.getBean("finishAccountRelatQry");

    AcctDto acctInfo = accountQry.getAcctInfoByAcctId(acctId);

    if(null == acctInfo){

    throw new Exception("获取账户信息为空!");

    }

    int balanceType = 9002;//账本类型

    //更新账户信息

    AcctChangeDto acctChangeInfo = new AcctChangeDto();

    acctChangeInfo.setAcctId(acctId);

    acctChangeInfo.setOweFee(realPayFee);

    acctChangeInfo.setChangeEvalue(realPayFee);

    acctChangeInfo.setOperType(AccountOperType.DEDUCT_PREPAY);

    acctChangeInfo.setRollBack(true);

    acctChangeInfo.setSOper(AccountChangeOper.ADJUST_PREPAY_CARD_PAY);

    acctBean = (IAccount)BscServiceUtils.getBean("finishAccount");

    Long balanceFee = acctBean.changeFee(acctChangeInfo);

    if(null == balanceFee){

    throw new Exception("调用账户模块返回的剩余费用为空!");

    }

    Long feeId = acctChangeInfo.getFeeId();

    if(null == feeId){

    throw new Exception("调用账户模块返回的费用流水号为空!");

    }

    //更新账本信息

    IBalanceAcctQry balanceQry = (IBalanceAcctQry)BscServiceUtils.getBean("finishBalanceAcctQry");

    Long balanceId = balanceQry.getBookBalanceId(acctId,balanceType);

    if(null == balanceId){

    throw new Exception("查询余额账本信息为空!");

    }

    IAccountBalance acctBalanceBean = (IAccountBalance)BscServiceUtils.getBean("finishAccountBalance");

    //更新账单

    IDeviceBill devicebillBean = (IDeviceBill)BscServiceUtils.getBean("finishDeviceBill");

    DeviceBillCheckRequest deviceBillCheck = new DeviceBillCheckRequest();

    deviceBillCheck.setAcctId(acctId);

    deviceBillCheck.setSoNbr(CommUtil.getSoNbr());

    deviceBillCheck.setCustId(acctInfo.getCustId());

    deviceBillCheck.setBillType(EnumCodeDefine.BILL_FEE_PAY);

    deviceBillCheck.setAcctBalanceId(balanceId);

    deviceBillCheck.setPayFee(realPayFee);

    deviceBillCheck.setFeeType(EnumCodeDefine.FEE_TYPE_PAYREQ_PREPAY);

    deviceBillCheck.setAcctItemTypeId(acctInfo.getAcctType());

    deviceBillCheck.setPhoneId(acctInfo.getPhoneId());

    deviceBillCheck.setRegionCode(CommUtil.getRegionCode(acctInfo.getPhoneId()));

    deviceBillCheck.setBillingType(BillingCycleSpecType.TERMINAL_PRECARD_BUY_PAY.getValue());

    devicebillBean.DeviceBillCheck(deviceBillCheck);

    } finally{

    //发送广播

    this.sendPromFee(acctId,realPayFee);

    }

    }

    private void sendPromFee(Long acctId,Long realPayFee)throws Exception{

    try {

    IMailNotice imail = (IMailNotice)BscServiceUtils.getBean("finishMailNotice");

    imail.sendPromFeeMail(acctId,realPayFee);

    } catch (Exception e) {

    IMailNotice imail = (IMailNotice)BscServiceUtils.getBean("finishMailNotice");

    imail.sendPromFeeMail1(acctId,realPayFee);

    throw e;

    }

    }

    }

    总结:以上是编辑:【茉新新】整理及AI智能原创关于《

    购买预付卡的账务处理

    》优质内容解答希望能帮助到您。
了解 【会计师】更多资讯
以上手机版 购买预付卡的账务处理 小编为您整理购买预付卡的账务处理的全部内容,以上内容仅供参考。
上一篇:成考大专什么专业实用哪些就业前景好(成考大专学什么专业好找工作)
下一篇:制造费用属于什么科目(制造费用属于什么科目借贷方向)

热门推荐

最新文章