feat:
- Redeem Code
This commit is contained in:
		| @@ -199,7 +199,7 @@ class DashboardComponent extends React.Component { | |||||||
|                       Voucher |                       Voucher | ||||||
|                     </Typography> |                     </Typography> | ||||||
|                     <Typography component="p"> |                     <Typography component="p"> | ||||||
|                       <NumberFormat value={(0).toFixed(2)} displayType={'text'} thousandSeparator={true} prefix={'Rp '} /> |                       <NumberFormat value={(this.props.appstate.wallet.data.wallet).toFixed(2)} displayType={'text'} thousandSeparator={true} prefix={'Rp '} /> | ||||||
|                     </Typography> |                     </Typography> | ||||||
|                   </MuiCardContent> |                   </MuiCardContent> | ||||||
|                   <MuiCardActions> |                   <MuiCardActions> | ||||||
| @@ -330,7 +330,8 @@ class DashboardComponent extends React.Component { | |||||||
|               style={{ marginTop: 15 }}> |               style={{ marginTop: 15 }}> | ||||||
|               {(this.vouchersStore.list.length > 0) ? |               {(this.vouchersStore.list.length > 0) ? | ||||||
|                 this.vouchersStore.list.map((item, index) => { |                 this.vouchersStore.list.map((item, index) => { | ||||||
|                   let image = get(item, 'images.logo', ''); |                   console.log("itemm", item) | ||||||
|  |                   let image = get(item, 'images.main', ''); | ||||||
|  |  | ||||||
|                   if (!image.includes('http')) { |                   if (!image.includes('http')) { | ||||||
|                     image = this.http.appendImagePath(image); |                     image = this.http.appendImagePath(image); | ||||||
|   | |||||||
| @@ -19,13 +19,56 @@ export default class ModalTopupComponent extends React.Component { | |||||||
|       inputCode2: '', |       inputCode2: '', | ||||||
|       inputCode3: '', |       inputCode3: '', | ||||||
|       inputCode4: '', |       inputCode4: '', | ||||||
|       confirmLoading: false |       confirmLoading: false, | ||||||
|  |       onOk: {} | ||||||
|     }; |     }; | ||||||
|     this.defaultState = Object.assign({}, this.state); |     this.defaultState = Object.assign({}, this.state); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   componentDidMount() {} |   componentDidMount() {} | ||||||
|  |  | ||||||
|  |   redeemCode (code) { | ||||||
|  |  | ||||||
|  |     const codeList = [ | ||||||
|  |       { | ||||||
|  |         code: 'MLXNAPNU18nd0871', | ||||||
|  |         amount: 10000 | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         code: 'ABAKO1239KLKHASD', | ||||||
|  |         amount: 20000 | ||||||
|  |       }, | ||||||
|  |  | ||||||
|  |       { | ||||||
|  |         code: 'W54VCZJN23FGSDAG', | ||||||
|  |         amount: 50000 | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         code: '123456789ABCEFGH', | ||||||
|  |         amount: 100000 | ||||||
|  |       } | ||||||
|  |     ] | ||||||
|  |  | ||||||
|  |     var rightCode = {} | ||||||
|  |  | ||||||
|  |     codeList.map((cl) => { | ||||||
|  |       if (cl.code === code){ | ||||||
|  |         rightCode = cl | ||||||
|  |         this.props.appstate.wallet.data.wallet = this.props.appstate.wallet.data.wallet + cl.amount | ||||||
|  |         message.success("Voucher redeem success"); | ||||||
|  |         this.setState({ | ||||||
|  |           confirmLoading: false | ||||||
|  |         }); | ||||||
|  |         this.state.onOk() | ||||||
|  |       }else{ | ||||||
|  |         this.setState({ | ||||||
|  |           confirmLoading: false | ||||||
|  |         }); | ||||||
|  |         message.warning("Voucher redeem failed") | ||||||
|  |       } | ||||||
|  |     }) | ||||||
|  | } | ||||||
|  |  | ||||||
|   render() { |   render() { | ||||||
|     const {data, isVisible = false, onOk = () => {}, onCancel = () => {}, title='Redeem your code'} = this.props; |     const {data, isVisible = false, onOk = () => {}, onCancel = () => {}, title='Redeem your code'} = this.props; | ||||||
|  |  | ||||||
| @@ -35,25 +78,29 @@ export default class ModalTopupComponent extends React.Component { | |||||||
|         visible={isVisible} |         visible={isVisible} | ||||||
|         onOk={async () => { |         onOk={async () => { | ||||||
|           this.setState({ |           this.setState({ | ||||||
|             confirmLoading: true |             confirmLoading: true, | ||||||
|  |             onOk: onOk() | ||||||
|           }); |           }); | ||||||
|           let voucherCode = this.state.inputCode1 + this.state.inputCode2 + this.state.inputCode3 + this.state.inputCode4; |           let voucherCode = this.state.inputCode1 + this.state.inputCode2 + this.state.inputCode3 + this.state.inputCode4; | ||||||
|  |           console.log("voucherCode", voucherCode) | ||||||
|  |  | ||||||
|           try { |           this.redeemCode(voucherCode) | ||||||
|             await this.props.appstate.wallet.redeemVoucherCode(voucherCode); |  | ||||||
|             this.props.onOk(); |           // try { | ||||||
|             message.info("Voucher redeem success"); |           //   await this.props.appstate.wallet.redeemVoucherCode(voucherCode); | ||||||
|           } catch (e) { |           //   this.props.onOk(); | ||||||
|             message.error(e.message); |           //   message.info("Voucher redeem success"); | ||||||
|           } finally { |           // } catch (e) { | ||||||
|             this.setState({ |           //   message.error(e.message); | ||||||
|               inputCode1: '', |           // } finally { | ||||||
|               inputCode2: '', |           //   this.setState({ | ||||||
|               inputCode3: '', |           //     inputCode1: '', | ||||||
|               inputCode4: '', |           //     inputCode2: '', | ||||||
|               confirmLoading: false |           //     inputCode3: '', | ||||||
|             }); |           //     inputCode4: '', | ||||||
|           } |           //     confirmLoading: false | ||||||
|  |           //   }); | ||||||
|  |           // } | ||||||
|  |  | ||||||
|         }} |         }} | ||||||
|         onCancel={() => { |         onCancel={() => { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user