import {createSlice} from "@reduxjs/toolkit"; import {REQ_STATUS} from "@api/config"; import { buildReqReducer, reqChangePayPass, reqFirstPayConfig, reqGetAccountsPayInfo, reqPaymentOrder, reqPayOrderList, reqRechargeConfig, reqWithdrawBaseInfo, reqWithdrawInfo, reqWithdrawPayout, reqWithdrawRecord, reqWithdrawSetInfo, reqWithdrawTax } from "@features/api"; import {getHttpMsg} from "@utils/helpers"; import {toast} from "react-toastify"; const i18n=global.i18n; const reducerRechargeConfig=(state,action,arg)=>{ let payload=action.payload; if (payload!=null&&payload.code===200){ let data=payload.data; if (data.list){ state.config=data.list; state.showBonus=data.bonus_show; // state.showBonus=true; } } } const rechargeConfigStatus=(state,status,arg)=>{ state.status.RechargeConfig=status; } const reducerFirstPayConfig=(state,action,arg)=>{ let payload=action.payload; // payload={ // "data": { // "first_pay": { // "id": "1017", // "money": "10", // "gear": "[{\"id\":\"28\",\"name\":\"PIX\\u76f4\\u8fde\",\"status\":1,\"type\":3}]", // "status": "1", // "created_at": "2022-06-09 13:57:58.000", // "favorable_price": 20, // "image": "11", // "give": "10", // "first_pay": "1", // "name": "\u9996\u5145\u6863\u4f4d\u914d\u7f6e", // "gift_id": "201", // "channels": "-1" // }, // "recomendar_recharge": "7" // }, // "result": "", // "msg": "success", // "code": 200 // }; if (payload!=null&&payload.code===200){ let data=payload.data; state.firstconfig=data; } } const firstPayConfigStatus=(state,status,arg)=>{ state.status.FirstPayConfig=status; } const reducerGetAccountsPayInfo=(state,action,arg)=>{ let payload=action.payload; if (payload!=null&&payload.code===200){ let data=payload.data; state.payconfig=data; } } const getAccountsPayInfoStatus=(state,status,arg)=>{ state.status.GetAccountsPayInfo=status; } const reducerPaymentOrder=(state,action,arg)=>{ let payload=action.payload; // payload={ // "data": { // "content": "00020101021226830014br.gov.bcb.pix2561pix.delbank.com.br\/v1\/qrcode\/vcharge22e43499260b46a9a5f303ca55204000053039865802BR5907DELBANK6007ARACAJU62070503***6304F3DF", // "money": 10, // "prdOrdNo": "BR5050013857473344515256" // }, // "result": "", // "msg": "success", // "code": 200 // }; if (payload!=null&&payload.code===200){ let data=payload.data; data.createAt=Date.now(); data.deadline=15*60; data.status="pending"; state.currPayOrder=data; if (arg.callback!=null)arg.callback(); } } const paymentOrderStatus=(state,status,arg)=>{ state.status.PaymentOrder=status; } const reducerPayOrderList=(state,action,arg)=>{ let payload=action.payload; if (payload!=null&&payload.code===200){ let data=payload.data; if (data){ state.payOrderList=data.data; } } } const payOrderListStatus=(state,status,arg)=>{ state.status.PayOrderList=status; } const reducerWithdrawTax=(state,action,arg)=>{ let payload=action.payload; if (payload&&payload.code===200){ let data=payload.data; if (data){ state.WithDrawTax=data.WithDrawTax; } } } const reducerWithdrawBaseInfo=(state,action,arg)=>{ let payload=action.payload; if (payload&&payload.code===200){ let data=payload.data; if (data){ state.withdrawBaseInfo=data; } } let callback=arg; if (callback!=null){ callback(payload); } } const withdrawBaseInfoStatus=(state,status,arg)=>{ state.status.WithdrawBaseInfo=status; } const reducerWithdrawInfo=(state,action,arg)=>{ let payload=action.payload; if (payload&&payload.code===200){ let data=payload.data; if (data){ if (data.info)state.withdrawInfo=data.info; } } } const withdrawInfoStatus=(state,status,arg)=>{ state.status.WithdrawInfo=status; } const reducerChangePayPass=(state,action,arg)=>{ let payload=action.payload; let msg=getHttpMsg(payload); if (payload&&payload.code===200){ let data=payload.data; if (data){ // state.withdrawInfo=data; } if (arg){ if (arg.newpassword!=null){ global.setWDPass(arg.newpassword); } } toast.success(msg); } else{ toast.error(msg); } if (arg&&arg.callback!=null){ arg.callback(payload); } } const changePayPassStatus=(state,status,arg)=>{ state.status.ChangePayPass=status; } const reducerWithdrawRecord=(state,action,arg)=>{ let payload=action.payload; if (payload&&payload.code===200){ let data=payload.data; if (data&&data.data){ state.withdrawRecord=data.data; } } } const withdrawRecordStatus=(state,status,arg)=>{ state.status.WithdrawRecoard=status; } const reducerWithdrawSetInfo=(state,action,arg)=>{ let payload=action.payload; let msg=payload.msg; if (msg==null)msg=""; if (payload&&payload.code===200){ let data=payload.data; toast.success(msg); } else { toast.error(msg); } if (arg&&arg.callback!=null){ arg.callback(payload); } } const withdrawSetInfoStatus=(state,status,arg)=>{ state.status.WithdrawSetInfo=status; } const reducerWithdrawPayout=(state,action,arg)=>{ let payload=action.payload; let msg=getHttpMsg(payload); if (payload&&payload.code===200){ // toast.success(msg); toast.success(i18n.t("withdraw.tip.success")); } else { toast.error(msg); } if (arg&&arg.callback!=null){ arg.callback(payload); } } const withdrawPayoutStatus=(state,status,arg)=>{ state.status.WithdrawPayout=status; } export const Pay=createSlice({ name: 'pay', initialState: { status:{ RechargeConfig:REQ_STATUS.NONE, FirstPayConfig:REQ_STATUS.NONE, GetAccountsPayInfo:REQ_STATUS.NONE, PaymentOrder:REQ_STATUS.NONE, ChangePayPass:REQ_STATUS.NONE, PayOrderList:REQ_STATUS.NONE, WithdrawRecoard:REQ_STATUS.NONE, WithdrawBaseInfo:REQ_STATUS.NONE, WithdrawInfo:REQ_STATUS.NONE, WithdrawSetInfo:REQ_STATUS.NONE, WithdrawPayout:REQ_STATUS.NONE, }, config:[], payconfig:null, firstconfig:null, payType:null, currPayOrder:null, WithDrawTax:4, withdrawBaseInfo:null, withdrawInfo:null, payOrderList:null, withdrawRecord:null, changePayPassType:0, showBonus:false }, reducers: { updatePayFinish:((state, action) => { if (state.currPayOrder!=null){ state.currPayOrder.status="success"; } //充值完成 message={Golds:12.xx,PayNum:10} toast.success(i18n.t("deposit.order_info.success")); }), setChangePayPassType:((state, action) => { state.changePayPassType=action.payload; }), onSliceChangeUser:((state, action) => { state.isInit=false; }) }, extraReducers: (builder) => { buildReqReducer(builder,reqRechargeConfig,reducerRechargeConfig,rechargeConfigStatus); buildReqReducer(builder,reqFirstPayConfig,reducerFirstPayConfig,firstPayConfigStatus); buildReqReducer(builder,reqGetAccountsPayInfo,reducerGetAccountsPayInfo,getAccountsPayInfoStatus); buildReqReducer(builder,reqPaymentOrder,reducerPaymentOrder,paymentOrderStatus); buildReqReducer(builder,reqWithdrawTax,reducerWithdrawTax,null); buildReqReducer(builder,reqWithdrawBaseInfo,reducerWithdrawBaseInfo,withdrawBaseInfoStatus); buildReqReducer(builder,reqWithdrawInfo,reducerWithdrawInfo,withdrawInfoStatus); buildReqReducer(builder,reqChangePayPass,reducerChangePayPass,changePayPassStatus); buildReqReducer(builder,reqPayOrderList,reducerPayOrderList,payOrderListStatus); buildReqReducer(builder,reqWithdrawRecord,reducerWithdrawRecord,withdrawRecordStatus); buildReqReducer(builder,reqWithdrawSetInfo,reducerWithdrawSetInfo,withdrawSetInfoStatus); buildReqReducer(builder,reqWithdrawPayout,reducerWithdrawPayout,withdrawPayoutStatus); }, }) export const {updatePayFinish,setChangePayPassType} = Pay.actions; export const getConfig=(state)=>{ return state.pay.config; } export const getFirstPay=(state)=>{ let firstconfig=state.pay.firstconfig; let config=state.pay.config; let order=null; if (firstconfig!=null){ let first_pay=firstconfig.first_pay; let recomendar_recharge=firstconfig.recomendar_recharge; if (first_pay!=null){ let gear=JSON.parse(first_pay.gear); if (gear)gear=gear[0]; order={ goodsName:"firstpay", goodsPrice:first_pay.money, GiftsID: 201, cpf_first:0, give:first_pay.give, gear:gear } } else { for (let i = 0; i { return state.pay.status.PaymentOrder; } export const getCurrPayOrder=(state)=>{ return state.pay.currPayOrder; } export const getWithdrawBaseInfo=(state)=>{ return state.pay.withdrawBaseInfo; } export const getWithdrawInfo=(state)=>{ return state.pay.withdrawInfo; } export const getChangePayPassStatus=(state)=>{ return state.pay.status.ChangePayPass; } export const getPayOrderStatus=(state)=>{ return state.pay.status.PayOrderList; } export const getPayOrderList=(state)=>{ return state.pay.payOrderList; } export const getWithdrawRecordStatus=(state)=>{ return state.pay.status.WithdrawRecoard; } export const getWithdrawRecord=(state)=>{ return state.pay.withdrawRecord; } export const getWithdrawTax=(state)=>{ return state.pay.WithDrawTax; } export const getWDBaseInfoStatus=(state)=>{ return state.pay.status.WithdrawBaseInfo; } export const getWDSetInfoStatus=(state)=>{ return state.pay.status.WithdrawSetInfo; } export const getWDInfoStatus=(state)=>{ return state.pay.status.WithdrawInfo; } export const getChangePayPassType=(state)=>{ return state.pay.changePayPassType; } export const getWDPayoutStatus=(state)=>{ return state.pay.status.WithdrawPayout; } export const getShowBonus=(state)=>{ return state.pay.showBonus; } export const getPayConfigStatus=(state)=>{ return state.pay.status.RechargeConfig; } export default Pay.reducer; export const reqPayConfig=(dispatch,userInfo)=>{ dispatch(reqRechargeConfig()); dispatch(reqFirstPayConfig(userInfo.UserID)); // dispatch(reqGetAccountsPayInfo(userInfo.UserID)); // dispatch(reqWithdrawTax()); }