fix notifications, add notification when authorized person do debit or credit
This commit is contained in:
		
							parent
							
								
									a876f99e13
								
							
						
					
					
						commit
						345227f5d4
					
				|  | @ -2,16 +2,19 @@ import { FG_Plugin } from '@flaschengeist/types'; | ||||||
| 
 | 
 | ||||||
| export interface SendFromNotification { | export interface SendFromNotification { | ||||||
|   receiver_id: string; |   receiver_id: string; | ||||||
|   author_id: string; |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export interface SendToNotification { | export interface SendToNotification { | ||||||
|   sender_id: string; |   sender_id: string; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | export interface TransactionNotification { | ||||||
|  |   author_id: string; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| export interface BalanceNotification extends FG_Plugin.Notification { | export interface BalanceNotification extends FG_Plugin.Notification { | ||||||
|   data: { |   data: { | ||||||
|     type: number; |     type: number; | ||||||
|     amount: number; |     amount: number; | ||||||
|   } & (SendFromNotification | SendToNotification); |   } & (SendFromNotification | SendToNotification | TransactionNotification); | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										12
									
								
								src/index.ts
								
								
								
								
							
							
						
						
									
										12
									
								
								src/index.ts
								
								
								
								
							|  | @ -1,12 +1,14 @@ | ||||||
| import { FG_Plugin } from '@flaschengeist/types'; | import { FG_Plugin } from '@flaschengeist/types'; | ||||||
| import { defineAsyncComponent } from 'vue'; | import { defineAsyncComponent } from 'vue'; | ||||||
| import routes from './routes'; | import routes from './routes'; | ||||||
| import { BalanceNotification, SendFromNotification, SendToNotification } from 'app/balance'; | import { BalanceNotification, SendFromNotification, SendToNotification, TransactionNotification } from 'app/balance'; | ||||||
| import { useUserStore } from '@flaschengeist/api'; | import { useUserStore } from '@flaschengeist/api'; | ||||||
| 
 | 
 | ||||||
| const BalanceTypes = { | const BalanceTypes = { | ||||||
|   send_to: 0x01, |   send_to: 0x01, | ||||||
|   send_from: 0x02, |   send_from: 0x02, | ||||||
|  |   add_from: 0x03, | ||||||
|  |   sub_from: 0x04, | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| function transpile(msg: FG_Plugin.Notification) { | function transpile(msg: FG_Plugin.Notification) { | ||||||
|  | @ -21,16 +23,20 @@ function transpile(msg: FG_Plugin.Notification) { | ||||||
|     message.text = `${author.display_name} hat ${message.data.amount.toFixed(2)}€ von dir zu ${ |     message.text = `${author.display_name} hat ${message.data.amount.toFixed(2)}€ von dir zu ${ | ||||||
|       receiver.display_name |       receiver.display_name | ||||||
|     } überwiesen.`;
 |     } überwiesen.`;
 | ||||||
|   } else { |   } else if (message.data.type === BalanceTypes.send_to) { | ||||||
|     const sender = <FG.User>store.findUser((<SendToNotification>message.data).sender_id); |     const sender = <FG.User>store.findUser((<SendToNotification>message.data).sender_id); | ||||||
|     console.log(sender); |     console.log(sender); | ||||||
|     message.text = `${sender.display_name} hat dir ${message.data.amount.toFixed(2)}€ überwiesen.`; |     message.text = `${sender.display_name} hat dir ${message.data.amount.toFixed(2)}€ überwiesen.`; | ||||||
|  |   } else { | ||||||
|  |     const author = <FG.User>store.findUser((<TransactionNotification>message.data).author_id); | ||||||
|  |     const abgebucht = message.data.type === BalanceTypes.add_from ? 'aufgeladen' : 'abgebucht'; | ||||||
|  |     message.text = `${author.display_name} hat ${message.data.amount.toFixed(2)}€ dir ${abgebucht}.`; | ||||||
|   } |   } | ||||||
|   return message; |   return message; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| const plugin: FG_Plugin.Plugin = { | const plugin: FG_Plugin.Plugin = { | ||||||
|   id: 'dev.flaschengeist.balance', |   id: 'balance', | ||||||
|   name: 'Balance', |   name: 'Balance', | ||||||
|   innerRoutes: routes, |   innerRoutes: routes, | ||||||
|   requiredModules: [['balance']], |   requiredModules: [['balance']], | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue