liurunyu
2024-09-30 e18c4a8ac170fea6e079047a27f72032c80eee67
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/cardOperate/CardOperateSv.java
@@ -7,8 +7,10 @@
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.daoBa.BaSettingsMapper;
import com.dy.pipIrrGlobal.daoRm.RmOpenCloseValveHistoryMapper;
import com.dy.pipIrrGlobal.daoSe.*;
import com.dy.pipIrrGlobal.pojoSe.*;
import com.dy.pipIrrGlobal.voRm.VoExpend;
import com.dy.pipIrrGlobal.voSe.*;
import com.dy.pipIrrSell.cardOperate.dto.DtoRecharge;
import com.dy.pipIrrSell.cardOperate.enums.OperateTypeENUM;
@@ -61,6 +63,9 @@
    @Autowired
    private SeRechargeHistoryMapper seRechargeHistoryMapper;
    @Autowired
    private RmOpenCloseValveHistoryMapper rmOpenCloseValveHistoryMapper;
    @Value("${project.projectNo}")
    private Integer projectNo;
@@ -208,18 +213,19 @@
        seClientCard.setId(cardId);
        seClientCard.setMoney(afterRecharge);
        seClientCard.setRechargedt(rechargeTime);
        if(paymentName != null && paymentName.equals("换卡")) {
            seClientCard.setLastoper(LastOperateENUM.CHANGE_RECHARGE.getCode ());
        }else {
            seClientCard.setLastoper(LastOperateENUM.RECHARGE.getCode ());
        }
        //if(paymentName != null && paymentName.equals("换卡")) {
        //    seClientCard.setLastoper(LastOperateENUM.CHANGE_RECHARGE.getCode ());
        //}else {
        //    seClientCard.setLastoper(LastOperateENUM.RECHARGE.getCode ());
        //}
        seClientCard.setLastoper(LastOperateENUM.RECHARGE.getCode ());
        Integer rec_updateClientCard = Optional.ofNullable(clientCardSv.UpdateClientCard(seClientCard)).orElse(0);
        if(rec_updateClientCard == 0) {
            return BaseResponseUtils.buildErrorMsg(SellResultCode.RECHARGE_FAIL_WRITE_CLIENT_CARD_ERROR.getMessage());
        }
        /**
         * 添加水卡操作记录
         * 添加水卡充值操作记录
         */
        SeCardOperate seCardOperate = new SeCardOperate();
        seCardOperate.setCardId(cardId);
@@ -227,11 +233,12 @@
        seCardOperate.setMoney(money);
        seCardOperate.setTradeAmount(amount);
        seCardOperate.setGift(gift);
        if(paymentName != null && paymentName.equals("换卡")) {
            seCardOperate.setOperateType(OperateTypeENUM.CHANGE_RECHARGE.getCode());
        }else {
            seCardOperate.setOperateType(OperateTypeENUM.RECHARGE.getCode());
        }
        //if(paymentName != null && paymentName.equals("换卡")) {
        //    seCardOperate.setOperateType(OperateTypeENUM.CHANGE_RECHARGE.getCode());
        //}else {
        //    seCardOperate.setOperateType(OperateTypeENUM.RECHARGE.getCode());
        //}
        seCardOperate.setOperateType(OperateTypeENUM.RECHARGE.getCode());
        seCardOperate.setPaymentId(paymentId);
        seCardOperate.setPrice(price);
        seCardOperate.setRemarks(remarks);
@@ -304,6 +311,63 @@
    }
    /**
     * 获取充值记录,管理平台充值列表使用,APP未使用
     * @param queryVo
     * @return
     */
    public QueryResultVo<List<VoRechargeNew>> getRechargesNew(QoRecharge queryVo) {
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
        Long itemTotal = seCardOperateMapper.getRechargesCountNew(params);
        QueryResultVo<List<VoRechargeNew>> rsVo = new QueryResultVo<>() ;
        rsVo.pageSize = queryVo.pageSize ;
        rsVo.pageCurr = queryVo.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = seCardOperateMapper.getRechargesNew(params);
        return rsVo ;
    }
    /**
     * 获取返还记录,管理平台充值列表使用
     * @param queryVo
     * @return
     */
    public QueryResultVo<List<VoRefund>> getRefunds(QoRecharge queryVo) {
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
        Long itemTotal = seCardOperateMapper.getRefundsCount(params);
        QueryResultVo<List<VoRefund>> rsVo = new QueryResultVo<>() ;
        rsVo.pageSize = queryVo.pageSize ;
        rsVo.pageCurr = queryVo.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = seCardOperateMapper.getRefunds(params);
        return rsVo ;
    }
    /**
     * 获取水卡消费记录,管理平台使用
     * @param queryVo
     * @return
     */
    public QueryResultVo<List<VoExpend>> getExpends(QoRecharge queryVo) {
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
        Long itemTotal = rmOpenCloseValveHistoryMapper.getExpendsCount(params);
        QueryResultVo<List<VoExpend>> rsVo = new QueryResultVo<>() ;
        rsVo.pageSize = queryVo.pageSize ;
        rsVo.pageCurr = queryVo.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = rmOpenCloseValveHistoryMapper.getExpends(params);
        return rsVo ;
    }
    /**
     * 根据指定条件获取交易记录
     * @param vo
     * @return
@@ -328,12 +392,13 @@
        // 获取符合条件的记录数
        Long itemTotal = Optional.ofNullable(seCardOperateMapper.getTransactionRecordCount(params)).orElse(0L);
        QueryResultVo rsVo = new QueryResultVo<>() ;
        QueryResultVo<List<VoTradeDetails>> rsVo = new QueryResultVo<>() ;
        rsVo.pageSize = vo.pageSize ;
        rsVo.pageCurr = vo.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        List<VoTradeDetails> list = seCardOperateMapper.getTransactions(params);
        rsVo.obj = seCardOperateMapper.getTransactions(params);
        List<VoTradeDetails> list = rsVo.obj;
        if(list.size() == 0) {
            return new HashMap();
        }
@@ -359,15 +424,13 @@
        }
        Map map_record = new HashMap();
        map_record.put("itemTotal", itemTotal);
        map_record.put("list", list);
        map_record.put("list", rsVo);
        Map map_result = new HashMap();
        map_result.put("waterCost", df.format(totalWaterCost));
        map_result.put("cardCost", df.format(totalCardCost));
        map_result.put("gift", df.format(totalGift));
        map_result.put("refund", df.format(totalRefund));
        map_result.put("records", map_record);
@@ -476,6 +539,13 @@
     * @return
     */
    public Map getReceipts(QoReceipt queryVo) {
        if (queryVo.getTimeStart() != null && queryVo.getTimeStart() != ""){
            queryVo.setTimeStart(queryVo.getTimeStart() + " 00:00:00");
        }
        if (queryVo.getTimeStop() != null && queryVo.getTimeStop() != ""){
            queryVo.setTimeStop(queryVo.getTimeStop() + " 23:59:59");
        }
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
        DecimalFormat df = new DecimalFormat("#.00");