Compare commits
	
		
			207 Commits
		
	
	
		
			master
			...
			mergeDev/c
		
	
	| Author | SHA1 | Date | 
|---|---|---|
| 
							
							
								 | 
						c1fe44959f | |
| 
							
							
								 | 
						913c762897 | |
| 
							
							
								 | 
						2719017b61 | |
| 
							
							
								 | 
						0a1c76bb88 | |
| 
							
							
								 | 
						4d19b6d7cf | |
| 
							
							
								 | 
						e3599d1903 | |
| 
							
							
								 | 
						75c8aefb9e | |
| 
							
							
								 | 
						8b907cec0d | |
| 
							
							
								 | 
						48460713cb | |
| 
							
							
								 | 
						f8658523a2 | |
| 
							
							
								 | 
						691e9d76fa | |
| 
							
							
								 | 
						74b88b9a2f | |
| 
							
							
								 | 
						ab51f5fd09 | |
| 
							
							
								 | 
						f9c269ce2d | |
| 
							
							
								 | 
						56cdb74646 | |
| 
							
							
								 | 
						1a77ac3d8e | |
| 
							
							
								 | 
						5eb76d813c | |
| 
							
							
								 | 
						be18b81589 | |
| 
							
							
								 | 
						45b49fb83c | |
| 
							
							
								 | 
						2199bb4eef | |
| 
							
							
								 | 
						6cd6c3e231 | |
| 
							
							
								 | 
						0a9381065f | |
| 
							
							
								 | 
						d891c3a051 | |
| 
							
							
								 | 
						8cceae74ef | |
| 
							
							
								
									
								
								 | 
						15ba847ef8 | |
| 
							
							
								 | 
						17dace7edf | |
| 
							
							
								 | 
						23df6da6bf | |
| 
							
							
								 | 
						89d10dbb7f | |
| 
							
							
								 | 
						b9885a2a02 | |
| 
							
							
								 | 
						35e98d866f | |
| 
							
							
								 | 
						f602e17ef2 | |
| 
							
							
								 | 
						d293fb7412 | |
| 
							
							
								 | 
						035fb59f64 | |
| 
							
							
								
									
								
								 | 
						d10f445bf2 | |
| 
							
							
								
									
								
								 | 
						b3722384f8 | |
| 
							
							
								
									
								
								 | 
						d04712a560 | |
| 
							
							
								 | 
						44e7cca0d7 | |
| 
							
							
								 | 
						3e1dcb2fe1 | |
| 
							
							
								 | 
						87d6bba079 | |
| 
							
							
								 | 
						a3206ebdd4 | |
| 
							
							
								 | 
						77547914e0 | |
| 
							
							
								 | 
						3507d17029 | |
| 
							
							
								 | 
						b799bf834e | |
| 
							
							
								 | 
						0580606373 | |
| 
							
							
								 | 
						61498e1594 | |
| 
							
							
								 | 
						c95d28870f | |
| 
							
							
								 | 
						b45fb1d19a | |
| 
							
							
								 | 
						a5a42a3f4d | |
| 
							
							
								 | 
						2872e4f75b | |
| 
							
							
								 | 
						ca99cdad86 | |
| 
							
							
								 | 
						c004406728 | |
| 
							
							
								 | 
						d244ae1dc1 | |
| 
							
							
								 | 
						7e433426cb | |
| 
							
							
								 | 
						bf3a9ed022 | |
| 
							
							
								 | 
						1cacdae547 | |
| 
							
							
								 | 
						4d501a437c | |
| 
							
							
								 | 
						ffff325e78 | |
| 
							
							
								 | 
						040c867c15 | |
| 
							
							
								 | 
						dc33b5ac71 | |
| 
							
							
								 | 
						5c3c5b6dcb | |
| 
							
							
								 | 
						ae16428783 | |
| 
							
							
								 | 
						d80b305b1a | |
| 
							
							
								 | 
						34b1de6d42 | |
| 
							
							
								 | 
						e7c9490554 | |
| 
							
							
								 | 
						d946b993ee | |
| 
							
							
								 | 
						70b38d05cf | |
| 
							
							
								 | 
						eb114a390f | |
| 
							
							
								 | 
						0b82072bea | |
| 
							
							
								 | 
						382a2b7dfa | |
| 
							
							
								 | 
						283974d869 | |
| 
							
							
								 | 
						b6f390064b | |
| 
							
							
								 | 
						88931f9c53 | |
| 
							
							
								 | 
						174b4b0594 | |
| 
							
							
								 | 
						0d3c931c87 | |
| 
							
							
								 | 
						70a8d4e847 | |
| 
							
							
								 | 
						aeec881299 | |
| 
							
							
								 | 
						5797eb1a23 | |
| 
							
							
								 | 
						32e93323b7 | |
| 
							
							
								 | 
						b4811f091e | |
| 
							
							
								 | 
						634239a9f1 | |
| 
							
							
								 | 
						3c44e6511c | |
| 
							
							
								 | 
						587d21ce1b | |
| 
							
							
								 | 
						69195e7442 | |
| 
							
							
								 | 
						b345cd5395 | |
| 
							
							
								 | 
						9407b2df6b | |
| 
							
							
								 | 
						6cade7d133 | |
| 
							
							
								 | 
						77f22993d4 | |
| 
							
							
								 | 
						49426e322c | |
| 
							
							
								 | 
						21435db9b3 | |
| 
							
							
								 | 
						ac1ec030db | |
| 
							
							
								 | 
						01900b64e4 | |
| 
							
							
								 | 
						816316b558 | |
| 
							
							
								 | 
						bd5825b7f8 | |
| 
							
							
								 | 
						55e3c07cf6 | |
| 
							
							
								 | 
						868df4713d | |
| 
							
							
								 | 
						e26762916c | |
| 
							
							
								 | 
						19349b9813 | |
| 
							
							
								 | 
						cdbbf9fc73 | |
| 
							
							
								 | 
						7d00af18b4 | |
| 
							
							
								 | 
						15fd01d5d3 | |
| 
							
							
								 | 
						285ddb75e7 | |
| 
							
							
								 | 
						8c63494417 | |
| 
							
							
								 | 
						56d210bf2d | |
| 
							
							
								 | 
						645effaa04 | |
| 
							
							
								 | 
						9a69327679 | |
| 
							
							
								 | 
						0d8e3969db | |
| 
							
							
								 | 
						64ad17016c | |
| 
							
							
								 | 
						ebd26022d9 | |
| 
							
							
								 | 
						79528f72e4 | |
| 
							
							
								 | 
						f6a2b34a7f | |
| 
							
							
								 | 
						7f03b98f90 | |
| 
							
							
								 | 
						2dbeab594a | |
| 
							
							
								 | 
						2602b22e40 | |
| 
							
							
								 | 
						7377519ead | |
| 
							
							
								 | 
						a86003caf0 | |
| 
							
							
								 | 
						1e2d10b3ce | |
| 
							
							
								 | 
						0dafeb6f1f | |
| 
							
							
								 | 
						0f4ba10479 | |
| 
							
							
								 | 
						9b59a6bc6a | |
| 
							
							
								 | 
						006accb415 | |
| 
							
							
								 | 
						37c20ac3c7 | |
| 
							
							
								 | 
						8c82fe548b | |
| 
							
							
								 | 
						cb45dbb694 | |
| 
							
							
								 | 
						73e2a8a7c8 | |
| 
							
							
								 | 
						e020db1c74 | |
| 
							
							
								 | 
						0bed9a6dfb | |
| 
							
							
								 | 
						d395f8944f | |
| 
							
							
								 | 
						6e5080c430 | |
| 
							
							
								 | 
						ebb3cd070a | |
| 
							
							
								 | 
						72aaea5b87 | |
| 
							
							
								 | 
						1c5666d7c1 | |
| 
							
							
								 | 
						389a26ad6f | |
| 
							
							
								 | 
						ecb51cc5da | |
| 
							
							
								 | 
						86cfda6dce | |
| 
							
							
								 | 
						96bc454514 | |
| 
							
							
								 | 
						33bc508f1f | |
| 
							
							
								 | 
						708fad7c59 | |
| 
							
							
								 | 
						574f61fe2f | |
| 
							
							
								 | 
						112c1c0f7d | |
| 
							
							
								 | 
						97686ff405 | |
| 
							
							
								 | 
						bab221fcb5 | |
| 
							
							
								 | 
						ef6a15e939 | |
| 
							
							
								 | 
						bb2405471b | |
| 
							
							
								 | 
						8df9dc1138 | |
| 
							
							
								 | 
						855cf4ad5f | |
| 
							
							
								 | 
						20f460b4ef | |
| 
							
							
								 | 
						dcbf82a4d0 | |
| 
							
							
								 | 
						27b14aa122 | |
| 
							
							
								 | 
						5dbde84ea9 | |
| 
							
							
								
									
								
								 | 
						e35090e490 | |
| 
							
							
								 | 
						f0eb62f3f5 | |
| 
							
							
								 | 
						b5fe2c5a71 | |
| 
							
							
								 | 
						2b890e01ef | |
| 
							
							
								 | 
						a6f9f9eac7 | |
| 
							
							
								 | 
						d2874bc681 | |
| 
							
							
								 | 
						87158679a7 | |
| 
							
							
								 | 
						f3ef44279b | |
| 
							
							
								 | 
						e0ecb83b9e | |
| 
							
							
								 | 
						9c9ed32d58 | |
| 
							
							
								
									
								
								 | 
						f6386332de | |
| 
							
							
								 | 
						b7d963cc90 | |
| 
							
							
								 | 
						65fe4d8380 | |
| 
							
							
								 | 
						8d571022fc | |
| 
							
							
								 | 
						722fa1aacf | |
| 
							
							
								 | 
						d71d7f0eb4 | |
| 
							
							
								 | 
						af44ea63f4 | |
| 
							
							
								 | 
						c7ad6baf4c | |
| 
							
							
								 | 
						539aa79128 | |
| 
							
							
								 | 
						ed0f16623a | |
| 
							
							
								 | 
						3e13cb55b3 | |
| 
							
							
								 | 
						cebb3214cf | |
| 
							
							
								 | 
						b9b55d144e | |
| 
							
							
								 | 
						29b2b861ff | |
| 
							
							
								 | 
						a86a097886 | |
| 
							
							
								 | 
						863e924a5e | |
| 
							
							
								 | 
						7a3e50ef97 | |
| 
							
							
								 | 
						13a465b627 | |
| 
							
							
								 | 
						7f57a9bd97 | |
| 
							
							
								 | 
						8fe3b39134 | |
| 
							
							
								 | 
						68146c7c2a | |
| 
							
							
								 | 
						439d1a0d5a | |
| 
							
							
								 | 
						ed564effe6 | |
| 
							
							
								 | 
						c2acdaf244 | |
| 
							
							
								 | 
						40e5219036 | |
| 
							
							
								 | 
						df9ccf9d69 | |
| 
							
							
								 | 
						e61ae3c10d | |
| 
							
							
								 | 
						36ad0b4972 | |
| 
							
							
								 | 
						d7c0138d6a | |
| 
							
							
								 | 
						021df099cc | |
| 
							
							
								 | 
						08a9fdabe0 | |
| 
							
							
								 | 
						6b168cd98a | |
| 
							
							
								 | 
						4a5adc610e | |
| 
							
							
								 | 
						a9cc99994f | |
| 
							
							
								 | 
						6bd4ebce2e | |
| 
							
							
								 | 
						3c5c95b103 | |
| 
							
							
								 | 
						a261c32dc4 | |
| 
							
							
								 | 
						fa5be3e17c | |
| 
							
							
								 | 
						c449dd44f1 | |
| 
							
							
								 | 
						af85d25516 | |
| 
							
							
								 | 
						389507050a | |
| 
							
							
								 | 
						86269e4292 | |
| 
							
							
								 | 
						22cd1eb18f | |
| 
							
							
								 | 
						44f0e4be44 | |
| 
							
							
								 | 
						ddc0af6338 | |
| 
							
							
								 | 
						5f5bfeb182 | |
| 
							
							
								 | 
						139dc6a865 | |
| 
							
							
								 | 
						4546d0e89b | 
| 
						 | 
					@ -14,5 +14,4 @@
 | 
				
			||||||
# Dependency directories (remove the comment below to include it)
 | 
					# Dependency directories (remove the comment below to include it)
 | 
				
			||||||
# vendor/
 | 
					# vendor/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.idea
 | 
					.idea
 | 
				
			||||||
*.DS_Store
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,36 +0,0 @@
 | 
				
			||||||
package client
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"encoding/json"
 | 
					 | 
				
			||||||
	"errors"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Affiliate ...
 | 
					 | 
				
			||||||
type Affiliate struct{}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetAffiliate ...
 | 
					 | 
				
			||||||
func GetAffiliate() Affiliate {
 | 
					 | 
				
			||||||
	return Affiliate{}
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetTransactions ...
 | 
					 | 
				
			||||||
func (w Affiliate) GetTransactions(p model.GetTransactionsRequest) (*model.GetTransactionsResponse, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Affiliate.GetTransactions, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.GetTransactionsResponse `json:"data"`
 | 
					 | 
				
			||||||
		Error string                         `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -3,33 +3,35 @@ package client
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	"encoding/json"
 | 
						"encoding/json"
 | 
				
			||||||
	"errors"
 | 
						"errors"
 | 
				
			||||||
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
						"git.selly.red/Selly-Modules/natsio"
 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
						"git.selly.red/Selly-Modules/natsio/model"
 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
						"git.selly.red/Selly-Modules/natsio/subject"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Queue ...
 | 
					// AuthSMS ...
 | 
				
			||||||
type Queue struct{}
 | 
					type AuthSMS struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetQueue ...
 | 
					// GetAuthSMS ...
 | 
				
			||||||
func GetQueue() Queue {
 | 
					func GetAuthSMS() AuthSMS {
 | 
				
			||||||
	return Queue{}
 | 
						return AuthSMS{}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (c Queue) ScheduleTask(p model.QueueScheduleTaskRequest) error {
 | 
					func (s AuthSMS) CheckPermission(p model.CheckPermissionRequest) error {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Queue.ScheduleTask, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.AuthSMS.CheckPermission, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return err
 | 
							return err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	var r struct {
 | 
						var r struct {
 | 
				
			||||||
		Error string `json:"error"`
 | 
							Error string `json:"error"`
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
		return err
 | 
							return err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if r.Error != "" {
 | 
						if r.Error != "" {
 | 
				
			||||||
		return errors.New(r.Error)
 | 
							return errors.New(r.Error)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -17,15 +17,16 @@ func GetBank() Bank {
 | 
				
			||||||
	return Bank{}
 | 
						return Bank{}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (s Bank) GetBankById(bankID string) (*model.BankBrief, error) {
 | 
					// GetBankInfo ...
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Bank.GetBankById, toBytes(bankID))
 | 
					func (s Bank) GetBankInfo(p []model.GetBankInfoRequest) ([]*model.ResponseBankInfo, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Bank.GetBankInfo, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	var r struct {
 | 
						var r struct {
 | 
				
			||||||
		Data  *model.BankBrief `json:"data"`
 | 
							Data  []*model.ResponseBankInfo `json:"data"`
 | 
				
			||||||
		Error string           `json:"error"`
 | 
							Error string                    `json:"error"`
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
| 
						 | 
					@ -38,18 +39,40 @@ func (s Bank) GetBankById(bankID string) (*model.BankBrief, error) {
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (s Bank) CheckBankAndBranchByID(p model.BankBranchRequest) bool {
 | 
					func (s Bank) CheckBankAndBranchByID(p model.CheckBankAndBranchByIDRequest) bool {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Bank.CheckBankAndBranchByID, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Bank.CheckBankAndBranchByID, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return false
 | 
							return false
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	var r struct {
 | 
						var r struct {
 | 
				
			||||||
		Error string `json:"error"`
 | 
							Data bool `json:"data"`
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
		return false
 | 
							return false
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return r.Error == ""
 | 
						return r.Data
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetBankAndBranchDetail ...
 | 
				
			||||||
 | 
					func (s Bank) GetBankAndBranchDetail(p model.GetBankInfoRequest) (*model.ResponseBankInfo, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Bank.GetBankInfoDetail, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.ResponseBankInfo `json:"data"`
 | 
				
			||||||
 | 
							Error string                  `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,39 +0,0 @@
 | 
				
			||||||
package client
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"encoding/json"
 | 
					 | 
				
			||||||
	"errors"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// BankBranch ...
 | 
					 | 
				
			||||||
type BankBranch struct{}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetBankBranch ...
 | 
					 | 
				
			||||||
func GetBankBranch() BankBranch {
 | 
					 | 
				
			||||||
	return BankBranch{}
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (s BankBranch) GetBankBranchById(bankBranchID string) (*model.BankBranchBrief, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Bank.GetBankBranchById, toBytes(bankBranchID))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.BankBranchBrief `json:"data"`
 | 
					 | 
				
			||||||
		Error string                 `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,58 +0,0 @@
 | 
				
			||||||
package client
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"encoding/json"
 | 
					 | 
				
			||||||
	"errors"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Campaign ...
 | 
					 | 
				
			||||||
type Campaign struct{}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetCampaign ...
 | 
					 | 
				
			||||||
func GetCampaign() Campaign {
 | 
					 | 
				
			||||||
	return Campaign{}
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetCampaignTransaction ...
 | 
					 | 
				
			||||||
func (c Campaign) GetCampaignTransaction(p model.GetCampaignTransactionsRequest) (*model.ResponseCampaignTransactionAll, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Campaign.GetListCampaignTransactionAdminInfoByIDs, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseCampaignTransactionAll `json:"data"`
 | 
					 | 
				
			||||||
		Error string                                `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetCampaignSellerStatistic ....
 | 
					 | 
				
			||||||
func (c Campaign) GetCampaignSellerStatistic(req model.GetCampaignSellerStatisticBySellerIDs) (*model.ResponseCampaignSellerStatisticList, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Campaign.GetCampaignSellerStatisticBySellerIDs, toBytes(req))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseCampaignSellerStatisticList `json:"data"`
 | 
					 | 
				
			||||||
		Error string                                     `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,30 @@
 | 
				
			||||||
 | 
					package client
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Email ...
 | 
				
			||||||
 | 
					type Email struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetEmail ...
 | 
				
			||||||
 | 
					func GetEmail() Email {
 | 
				
			||||||
 | 
						return Email{}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// func (s Email) Send(p model.GetEmailRequest) ([]*model.ResponseEmailInfo, error) {
 | 
				
			||||||
 | 
					// 	msg, err := natsio.GetServer().Request(subject.Email.GetListEmailInfo, toBytes(p))
 | 
				
			||||||
 | 
					// 	if err != nil {
 | 
				
			||||||
 | 
					// 		return nil, err
 | 
				
			||||||
 | 
					// 	}
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// 	var r struct {
 | 
				
			||||||
 | 
					// 		Data  []*model.ResponseEmailInfo `json:"data"`
 | 
				
			||||||
 | 
					// 		Error string                     `json:"error"`
 | 
				
			||||||
 | 
					// 	}
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// 	if err := json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
					// 		return nil, err
 | 
				
			||||||
 | 
					// 	}
 | 
				
			||||||
 | 
					// 	if r.Error != "" {
 | 
				
			||||||
 | 
					// 		return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
					// 	}
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// 	return r.Data, nil
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
| 
						 | 
					@ -19,28 +19,7 @@ func GetLocation() Location {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetLocationByCode ...
 | 
					// GetLocationByCode ...
 | 
				
			||||||
func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*model.ResponseLocationAddress, error) {
 | 
					func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*model.ResponseLocationAddress, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Location.GetLocationByCodeFromLocationService, toBytes(payload))
 | 
						msg, err := natsio.GetServer().Request(subject.Location.GetLocationByCodeNew, toBytes(payload))
 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseLocationAddress `json:"data"`
 | 
					 | 
				
			||||||
		Error string                         `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetLocationByWardCode ...
 | 
					 | 
				
			||||||
func (l Location) GetLocationByWardCode(payload model.RequestCondition) (*model.ResponseLocationAddress, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Location.GetLocationByWardCode, toBytes(payload))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -61,7 +40,7 @@ func (l Location) GetLocationByWardCode(payload model.RequestCondition) (*model.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetProvincesByCodes ...
 | 
					// GetProvincesByCodes ...
 | 
				
			||||||
func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.LocationProvinceResponse, error) {
 | 
					func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.LocationProvinceResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Location.GetProvincesByCodesFromLocationService, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Location.GetProvincesByCodesNew, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -83,7 +62,7 @@ func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.Lo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetDistrictsByCodes ...
 | 
					// GetDistrictsByCodes ...
 | 
				
			||||||
func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.LocationDistrictResponse, error) {
 | 
					func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.LocationDistrictResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCodesFromLocationService, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCodesNew, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -105,7 +84,7 @@ func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.Lo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetWardsByCodes ...
 | 
					// GetWardsByCodes ...
 | 
				
			||||||
func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWardResponse, error) {
 | 
					func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWardResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCodesFromLocationService, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCodesNew, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,31 @@
 | 
				
			||||||
 | 
					package client
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import (
 | 
				
			||||||
 | 
						"encoding/json"
 | 
				
			||||||
 | 
						"errors"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/model"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/subject"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func GetNotification() Notification {
 | 
				
			||||||
 | 
						return Notification{}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type Notification struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (n Notification) SupplierChangeBalanceRequestApproved(p model.NotificationSupplierChangeBalanceRequestApprovedReq) error {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Notification.SupplierChangeBalanceRequestApproved, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						var r model.CommonResponseData
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -120,16 +120,18 @@ func (o Order) GetSupplierOrders(p model.OrderSupplierQuery) (*model.SupplierOrd
 | 
				
			||||||
	return &r.Data, nil
 | 
						return &r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetUserTotalWarningOrder ...
 | 
					// GetSupplierCash ...
 | 
				
			||||||
func (o Order) GetUserTotalWarningOrder(p model.OrderGetTotalWarningPayload) (*model.OrderGetTotalWarningRes, error) {
 | 
					func (o Order) GetSupplierCash(p model.OrderSupplierCashReq) (*model.OrderSupplierCashRes, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Order.GetUserTotalWarningOrders, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Order.GetSupplierCash, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	var r struct {
 | 
						var (
 | 
				
			||||||
		Data  model.OrderGetTotalWarningRes `json:"data"`
 | 
							r struct {
 | 
				
			||||||
		Error string                        `json:"error"`
 | 
								Data  model.OrderSupplierCashRes `json:"data"`
 | 
				
			||||||
	}
 | 
								Error string                     `json:"error"`
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						)
 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,86 +0,0 @@
 | 
				
			||||||
package client
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"encoding/json"
 | 
					 | 
				
			||||||
	"errors"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Product ...
 | 
					 | 
				
			||||||
type Product struct{}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetProduct ...
 | 
					 | 
				
			||||||
func GetProduct() Product {
 | 
					 | 
				
			||||||
	return Product{}
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (c Product) ApplyRequest(p model.ProductApplyRequestPayload) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Product.ApplyRequest, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (c Product) CreateRequestSteps(p model.ProductCreateStepsPayload) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Product.CreateRequestStep, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (c Product) ProcessApplyRequest(p model.ProductApplyRequestPayload) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Product.ProcessApplyRequest, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (c Product) RequestChangeStatus(p model.ProductRequestChangeStatus) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Product.RequestChangeStatus, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,37 +0,0 @@
 | 
				
			||||||
package client
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"encoding/json"
 | 
					 | 
				
			||||||
	"errors"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type Promotion struct{}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func GetPromotion() Promotion {
 | 
					 | 
				
			||||||
	return Promotion{}
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (s Promotion) GenerateVoucherPromotion(p model.GenerateVoucherPromotionRequest) (*model.ResponseGenerateVoucherPromotion, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Promotion.GenerateVoucherPromotion, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseGenerateVoucherPromotion `json:"data"`
 | 
					 | 
				
			||||||
		Error string                                  `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -9,12 +9,15 @@ import (
 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
						"git.selly.red/Selly-Modules/natsio/subject"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Seller ...
 | 
				
			||||||
type Seller struct{}
 | 
					type Seller struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetSeller ...
 | 
				
			||||||
func GetSeller() Seller {
 | 
					func GetSeller() Seller {
 | 
				
			||||||
	return Seller{}
 | 
						return Seller{}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetSellerInfoByID ...
 | 
				
			||||||
func (s Seller) GetSellerInfoByID(p model.GetSellerByIDRequest) (*model.ResponseSellerInfo, error) {
 | 
					func (s Seller) GetSellerInfoByID(p model.GetSellerByIDRequest) (*model.ResponseSellerInfo, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Seller.GetSellerInfoByID, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Seller.GetSellerInfoByID, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
| 
						 | 
					@ -37,6 +40,7 @@ func (s Seller) GetSellerInfoByID(p model.GetSellerByIDRequest) (*model.Response
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetListSellerInfoByIDs ...
 | 
				
			||||||
func (s Seller) GetListSellerInfoByIDs(p model.GetListSellerByIDsRequest) (*model.ResponseListSellerInfo, error) {
 | 
					func (s Seller) GetListSellerInfoByIDs(p model.GetListSellerByIDsRequest) (*model.ResponseListSellerInfo, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Seller.GetListSellerInfoByIDs, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Seller.GetListSellerInfoByIDs, toBytes(p))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -60,6 +64,7 @@ func (s Seller) GetListSellerInfoByIDs(p model.GetListSellerByIDsRequest) (*mode
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetListSellerInfoSupportChatByIDs ...
 | 
				
			||||||
func (s Seller) GetListSellerInfoSupportChatByIDs(p model.GetListSellerSupportChatByIDsRequest) (*model.ResponseListSellerInfoSupportChat, error) {
 | 
					func (s Seller) GetListSellerInfoSupportChatByIDs(p model.GetListSellerSupportChatByIDsRequest) (*model.ResponseListSellerInfoSupportChat, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.SupportChat.GetListSellerInfoSupportChatByIDs, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.SupportChat.GetListSellerInfoSupportChatByIDs, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
| 
						 | 
					@ -80,69 +85,3 @@ func (s Seller) GetListSellerInfoSupportChatByIDs(p model.GetListSellerSupportCh
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
func (s Seller) CheckAndInsertCashflows(p model.CheckAndInsertCashflowsRequest) (*model.ResponseCheckAndInsertCashflows, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Seller.CheckAndInsertCashflows, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseCheckAndInsertCashflows `json:"data"`
 | 
					 | 
				
			||||||
		Error string                                 `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (s Seller) UpdateSellerAffiliateStatistic(p model.UpdateSellerAffiliateStatisticRequest) (*model.ResponseUpdateSellerAffiliateStatistic, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Seller.UpdateSellerAffiliateStatistic, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseUpdateSellerAffiliateStatistic `json:"data"`
 | 
					 | 
				
			||||||
		Error string                                        `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (s Seller) UpdateSellerSavingCampaignStatistic(p model.UpdateSellerSavingCampaignStatisticRequest) (*model.ResponseUpdateSellerSavingCampaignStatistic, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Seller.UpdateSellerSavingCampaignStatistic, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseUpdateSellerSavingCampaignStatistic `json:"data"`
 | 
					 | 
				
			||||||
		Error string                                             `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,27 +0,0 @@
 | 
				
			||||||
package client
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Socket ...
 | 
					 | 
				
			||||||
type Socket struct{}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetSocket ...
 | 
					 | 
				
			||||||
func GetSocket() Socket {
 | 
					 | 
				
			||||||
	return Socket{}
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// EmitSocketEventDataReward ...
 | 
					 | 
				
			||||||
func (s Socket) EmitSocketEventDataReward(p model.PayloadEmitSocketEvent) error {
 | 
					 | 
				
			||||||
	_, err := natsio.GetServer().Request(subject.Socket.EmitEventReward, toBytes(p))
 | 
					 | 
				
			||||||
	return err
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// EmitEventToUser ...
 | 
					 | 
				
			||||||
func (s Socket) EmitEventToUser(p model.PayloadEmitSocketEvent) error {
 | 
					 | 
				
			||||||
	_, err := natsio.GetServer().Request(subject.Socket.EmitEventToUser, toBytes(p))
 | 
					 | 
				
			||||||
	return err
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,7 @@ package client
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	"encoding/json"
 | 
						"encoding/json"
 | 
				
			||||||
	"errors"
 | 
						"errors"
 | 
				
			||||||
 | 
						"go.mongodb.org/mongo-driver/bson"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
						"git.selly.red/Selly-Modules/natsio"
 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
						"git.selly.red/Selly-Modules/natsio/model"
 | 
				
			||||||
| 
						 | 
					@ -38,28 +39,6 @@ func (s Supplier) GetListSupplierInfo(p model.GetSupplierRequest) ([]*model.Resp
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetDetailSupplierInfo ...
 | 
					 | 
				
			||||||
func (s Supplier) GetDetailSupplierInfo(p model.GetDetailSupplierRequest) (*model.ResponseSupplierInfo, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Supplier.GetDetailSupplierInfo, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  *model.ResponseSupplierInfo `json:"data"`
 | 
					 | 
				
			||||||
		Error string                      `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err := json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (s Supplier) GetSupplierContractBySupplierID(p model.GetSupplierContractRequest) (*model.ResponseSupplierContract, error) {
 | 
					func (s Supplier) GetSupplierContractBySupplierID(p model.GetSupplierContractRequest) (*model.ResponseSupplierContract, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Supplier.GetSupplierContractBySupplierID, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Supplier.GetSupplierContractBySupplierID, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
| 
						 | 
					@ -144,15 +123,34 @@ func (s Supplier) GetBankInfoByID(supplierID model.SupplierRequestPayload) (*mod
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (s Supplier) Count(req model.SupplierCountReq) (*model.SupplierCountRes, error) {
 | 
					// SyncWarehouseIntoServiceSupplier ...
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Supplier.Count, toBytes(req))
 | 
					func (s Supplier) SyncWarehouseIntoServiceSupplier(p model.SyncSupplierWarehousePayload) error {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Warehouse.SyncWarehouseIntoServiceSupplier, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Error string `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetListWarehouseFreeShip ...
 | 
				
			||||||
 | 
					func (s Supplier) GetListWarehouseFreeShip() (*model.SupplierListWarehouseFreeShipResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Supplier.GetListWarehouseFreeShip, toBytes(bson.M{}))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	var r struct {
 | 
						var r struct {
 | 
				
			||||||
		Data  *model.SupplierCountRes `json:"data"`
 | 
							Data  *model.SupplierListWarehouseFreeShipResponse `json:"data"`
 | 
				
			||||||
		Error string                  `json:"error"`
 | 
							Error string                                       `json:"error"`
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
| 
						 | 
					@ -165,27 +163,82 @@ func (s Supplier) Count(req model.SupplierCountReq) (*model.SupplierCountRes, er
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// CreateWarehouseIntoServiceSupplier ...
 | 
					// GetFreeShipInfo ...
 | 
				
			||||||
func (s Supplier) CreateWarehouseIntoServiceSupplier(p model.CreateSupplierWarehousePayload) error {
 | 
					func (s Supplier) GetFreeShipInfo(p model.SupplierFreeShipInfoRequestPayload) ([]*model.SupplierFreeShipInfoResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.CreateWarehouseIntoServiceSupplier, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Supplier.GetFreeShipInfo, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	var r struct {
 | 
						var r struct {
 | 
				
			||||||
		Error string `json:"error"`
 | 
							Data  []*model.SupplierFreeShipInfoResponse `json:"data"`
 | 
				
			||||||
 | 
							Error string                                `json:"error"`
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
		return err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if r.Error != "" {
 | 
						if r.Error != "" {
 | 
				
			||||||
		return errors.New(r.Error)
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// UpdateWarehouseIntoServiceSupplier ...
 | 
					// CreateCashflow ...
 | 
				
			||||||
func (s Supplier) UpdateWarehouseIntoServiceSupplier(p model.UpdateSupplierWarehousePayload) error {
 | 
					func (s Supplier) CreateCashflow(p model.SupplierCashflowCreatePayload) (*model.SupplierCashflowCreateResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateWarehouseIntoServiceSupplier, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Supplier.CreateCashflow, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Error string                                `json:"error"`
 | 
				
			||||||
 | 
							Data  *model.SupplierCashflowCreateResponse `json:"data"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s Supplier) UpdateBalance(p model.SupplierUpdateBalanceReq) (*model.SupplierUpdateBalanceRes, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Supplier.UpdateBalance, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Error string                          `json:"error"`
 | 
				
			||||||
 | 
							Data  *model.SupplierUpdateBalanceRes `json:"data"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s Supplier) GetCurrentBalance(p model.SupplierGetCurrentBalanceReq) (*model.SupplierGetCurrentBalanceRes, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Supplier.GetCurrentBalance, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Error string                              `json:"error"`
 | 
				
			||||||
 | 
							Data  *model.SupplierGetCurrentBalanceRes `json:"data"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s Supplier) DeleteCashflow(p model.SupplierDeleteCashflowReq) error {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Supplier.DeleteCashflow, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return err
 | 
							return err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,79 @@
 | 
				
			||||||
 | 
					package client
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import (
 | 
				
			||||||
 | 
						"encoding/json"
 | 
				
			||||||
 | 
						"errors"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/model"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/subject"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// SupplierPermission ...
 | 
				
			||||||
 | 
					type SupplierPermission struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetSupplierPermission ...
 | 
				
			||||||
 | 
					func GetSupplierPermission() SupplierPermission {
 | 
				
			||||||
 | 
						return SupplierPermission{}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierPermission) GetListPermission(p model.GetListPermissionRequest) (*model.GetListPermissionResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierPermission.GetList, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.GetListPermissionResponse `json:"data"`
 | 
				
			||||||
 | 
							Error string                           `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierPermission) CreatePermission(p model.CreatePermissionRequest) (*model.CreatePermissionResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierPermission.Create, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.CreatePermissionResponse `json:"data"`
 | 
				
			||||||
 | 
							Error string                          `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierPermission) UpdatePermission(p model.UpdatePermissionRequest) error {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierPermission.Update, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Error string `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -16,8 +16,28 @@ func GetSupplierRole() SupplierRole {
 | 
				
			||||||
	return SupplierRole{}
 | 
						return SupplierRole{}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierRole) GetListRole(p model.GetListRoleRequest) (*model.GetListRoleResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierRole.GetList, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.GetListRoleResponse `json:"data"`
 | 
				
			||||||
 | 
							Error string                     `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (s SupplierRole) CreateRole(p model.CreateRoleRequest) (*model.CreateRoleResponse, error) {
 | 
					func (s SupplierRole) CreateRole(p model.CreateRoleRequest) (*model.CreateRoleResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierRole.Create, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -56,3 +76,24 @@ func (s SupplierRole) UpdateRole(p model.UpdateRoleRequest) error {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierRole) DetailRole(p model.DetailRoleRequest) (*model.RoleBrief, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierRole.Detail, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.RoleBrief `json:"data"`
 | 
				
			||||||
 | 
							Error string           `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -16,6 +16,89 @@ func GetSupplierUser() SupplierUser {
 | 
				
			||||||
	return SupplierUser{}
 | 
						return SupplierUser{}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierUser) LoginUser(p model.LoginUserRequest) (*model.LoginUserResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierUser.LoginUser, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.LoginUserResponse `json:"data"`
 | 
				
			||||||
 | 
							Error string                   `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierUser) Logout(p model.LogoutRequest) error {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierUser.Logout, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Error string `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierUser) GetListUser(p model.GetListUserRequest) (*model.GetListUserResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierUser.GetListUser, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.GetListUserResponse `json:"data"`
 | 
				
			||||||
 | 
							Error string                     `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierUser) DetailUser(p model.DetailUserRequest) (*model.SupplierUserBrief, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierUser.DetailUser, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.SupplierUserBrief `json:"data"`
 | 
				
			||||||
 | 
							Error string                   `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (s SupplierUser) CreateSupplierOwnerUsers(p model.CreateOwnerRequest) (*model.CreateOwnerResponse, error) {
 | 
					func (s SupplierUser) CreateSupplierOwnerUsers(p model.CreateOwnerRequest) (*model.CreateOwnerResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
| 
						 | 
					@ -99,7 +182,7 @@ func (s SupplierUser) UpdateSupplierStaffUsers(p model.UpdateStaffRequest) error
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (s SupplierUser) UpdateStatus(p model.UpdateStatusRequest) error {
 | 
					func (s SupplierUser) UpdateStatus(p model.UpdateStatusRequest) error {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateStaff, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateStatus, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return err
 | 
							return err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -139,22 +222,22 @@ func (s SupplierUser) ResetPassword(p model.ResetPasswordRequest) (*model.ResetP
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// CheckTokenSupplierUser ...
 | 
					func (s SupplierUser) ChangePassword(p model.ChangePasswordRequest) error {
 | 
				
			||||||
func (s SupplierUser) CheckTokenSupplierUser(p model.CheckTokenSupplierUserPayload) (*model.ResponseCheckTokenSupplierUser, error) {
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateStatus, toBytes(p))
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.SupplierUser.CheckTokenSupplierUser, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	var r struct {
 | 
						var r struct {
 | 
				
			||||||
		Error string                                `json:"error"`
 | 
							Error string `json:"error"`
 | 
				
			||||||
		Data  *model.ResponseCheckTokenSupplierUser `json:"data"`
 | 
					 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if r.Error != "" {
 | 
						if r.Error != "" {
 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
							return errors.New(r.Error)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return r.Data, nil
 | 
					
 | 
				
			||||||
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -146,25 +146,6 @@ func (w Warehouse) GetConfigByWarehouseID(warehouseID string) (*model.WarehouseC
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetListConfig ...
 | 
					 | 
				
			||||||
func (w Warehouse) GetListConfig(req model.GetListWarehouseConfigReq) ([]*model.WarehouseConfiguration, error) {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.GetListWarehouseConfig, toBytes(req))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Data  []*model.WarehouseConfiguration `json:"data"`
 | 
					 | 
				
			||||||
		Error string                          `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return nil, err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return nil, errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return r.Data, nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetWarehouses ...
 | 
					// GetWarehouses ...
 | 
				
			||||||
func (w Warehouse) GetWarehouses(p model.GetWarehousesRequest) (*model.GetWarehousesResponse, error) {
 | 
					func (w Warehouse) GetWarehouses(p model.GetWarehousesRequest) (*model.GetWarehousesResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.GetWarehouses, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.Warehouse.GetWarehouses, toBytes(p))
 | 
				
			||||||
| 
						 | 
					@ -201,43 +182,3 @@ func (w Warehouse) UpdateORDeliveryStatus(p model.WarehouseORUpdateDeliveryStatu
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
// UpdateStatusWarehousePendingInactive ...
 | 
					 | 
				
			||||||
func (w Warehouse) UpdateStatusWarehousePendingInactive(p model.UpdateStatusWarehousePendingInactiveRequest) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateStatusWarehousePendingInactive, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return fmt.Errorf("nats: update_status_warehouse_pending_inactive %v", err)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// UpdateIsSellyMall ...
 | 
					 | 
				
			||||||
func (w Warehouse) UpdateIsSellyMall(p model.UpdateIsSellyMallRequest) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateIsSellyMall, toBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return fmt.Errorf("nats: update_is_selly_mall %v", err)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,7 +3,6 @@ package client
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	"encoding/json"
 | 
						"encoding/json"
 | 
				
			||||||
	"errors"
 | 
						"errors"
 | 
				
			||||||
 | 
					 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio"
 | 
						"git.selly.red/Selly-Modules/natsio"
 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/model"
 | 
						"git.selly.red/Selly-Modules/natsio/model"
 | 
				
			||||||
	"git.selly.red/Selly-Modules/natsio/subject"
 | 
						"git.selly.red/Selly-Modules/natsio/subject"
 | 
				
			||||||
| 
						 | 
					@ -84,39 +83,3 @@ func (w Warehouse) FindByCondition(p model.FindWithCondition) ([]*model.Warehous
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return r.Data, nil
 | 
						return r.Data, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
// UpdateWarehouseConfig ...
 | 
					 | 
				
			||||||
func (w Warehouse) UpdateWarehouseConfig(p model.UpdatePayload) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateWarehouseConfig, bsonToBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// BulkWriteWarehouseConfig ...
 | 
					 | 
				
			||||||
func (w Warehouse) BulkWriteWarehouseConfig(p model.UpdatePayload) error {
 | 
					 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.Warehouse.BulkWriteWarehouseConfig, bsonToBytes(p))
 | 
					 | 
				
			||||||
	if err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	var r struct {
 | 
					 | 
				
			||||||
		Error string `json:"error"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
					 | 
				
			||||||
		return err
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if r.Error != "" {
 | 
					 | 
				
			||||||
		return errors.New(r.Error)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return nil
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,39 @@
 | 
				
			||||||
 | 
					package client
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import (
 | 
				
			||||||
 | 
						"encoding/json"
 | 
				
			||||||
 | 
						"errors"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/model"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/subject"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Withdraw ...
 | 
				
			||||||
 | 
					type Withdraw struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetWithdraw ...
 | 
				
			||||||
 | 
					func GetWithdraw() Withdraw {
 | 
				
			||||||
 | 
						return Withdraw{}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetSupplierCash ...
 | 
				
			||||||
 | 
					func (o Withdraw) GetSupplierCash(p model.WithdrawSupplierCashReq) (*model.WithdrawSupplierCashRes, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Withdraw.GetSupplierCash, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						var (
 | 
				
			||||||
 | 
							r struct {
 | 
				
			||||||
 | 
								Data  model.WithdrawSupplierCashRes `json:"data"`
 | 
				
			||||||
 | 
								Error string                        `json:"error"`
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						)
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return nil, errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return &r.Data, nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -2,17 +2,11 @@ package jsconsumer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Selly ...
 | 
					// Selly ...
 | 
				
			||||||
var Selly = struct {
 | 
					var Selly = struct {
 | 
				
			||||||
	PushNotification                    string
 | 
						PushNotification               string
 | 
				
			||||||
	UpdateSellerAffiliateStatistic      string
 | 
						UpdateSellerAffiliateStatistic string
 | 
				
			||||||
	CheckAnDInsertCashflowBySeller      string
 | 
						CheckAnDInsertCashflowBySeller string
 | 
				
			||||||
	SubscriberTopic                     string
 | 
					 | 
				
			||||||
	UpdateSellerSavingCampaignStatistic string
 | 
					 | 
				
			||||||
	GenerateVoucherPromotion            string
 | 
					 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	PushNotification:                    "PULL_PUSH_NOTIFICATION",
 | 
						PushNotification:               "PULL_PUSH_NOTIFICATION",
 | 
				
			||||||
	UpdateSellerAffiliateStatistic:      "PULL_UPDATE_SELLER_AFFILIATE_STATISTIC",
 | 
						UpdateSellerAffiliateStatistic: "PULL_UPDATE_SELLER_AFFILIATE_STATISTIC",
 | 
				
			||||||
	CheckAnDInsertCashflowBySeller:      "PULL_CHECK_AND_INSERT_CASHFLOW_BY_SELLER",
 | 
						CheckAnDInsertCashflowBySeller: "PULL_CHECK_AND_INSERT_CASHFLOW_BY_SELLER",
 | 
				
			||||||
	SubscriberTopic:                     "PULL_SUBSCRIBER_TOPIC",
 | 
					 | 
				
			||||||
	UpdateSellerSavingCampaignStatistic: "PULL_UPDATE_SELLER_SAVING_CAMPAIGN_STATISTIC",
 | 
					 | 
				
			||||||
	GenerateVoucherPromotion:            "PULL_GENERATE_VOUCHER_PROMOTION",
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,5 @@
 | 
				
			||||||
package jsmodel
 | 
					package jsmodel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import "go.mongodb.org/mongo-driver/bson/primitive"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// PushNotification ...
 | 
					// PushNotification ...
 | 
				
			||||||
type PushNotification struct {
 | 
					type PushNotification struct {
 | 
				
			||||||
	User        string              `json:"user"`
 | 
						User        string              `json:"user"`
 | 
				
			||||||
| 
						 | 
					@ -14,11 +12,9 @@ type PushNotification struct {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// NotificationOptions ...
 | 
					// NotificationOptions ...
 | 
				
			||||||
type NotificationOptions struct {
 | 
					type NotificationOptions struct {
 | 
				
			||||||
	Title                      string `json:"title"`
 | 
						Title      string `json:"title"`
 | 
				
			||||||
	Content                    string `json:"content"`
 | 
						Content    string `json:"content"`
 | 
				
			||||||
	CampaignID                 string `json:"campaignId,omitempty"`
 | 
						CampaignID string `json:"campaignId,omitempty"`
 | 
				
			||||||
	SellerSavingCampaignID     string `json:"sellerSavingCampaignId,omitempty"`
 | 
					 | 
				
			||||||
	SellerSavingCampaignStatus string `json:"sellerSavingCampaignStatus,omitempty"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// PayloadUpdateSellerAffiliateStatistic ...
 | 
					// PayloadUpdateSellerAffiliateStatistic ...
 | 
				
			||||||
| 
						 | 
					@ -62,49 +58,4 @@ type CashFlowOptions struct {
 | 
				
			||||||
	AffiliateTransactionCode string `json:"affiliateTransactionCode,omitempty"`
 | 
						AffiliateTransactionCode string `json:"affiliateTransactionCode,omitempty"`
 | 
				
			||||||
	AffiliateCampaignID      string `json:"affiliateCampaignId,omitempty"`
 | 
						AffiliateCampaignID      string `json:"affiliateCampaignId,omitempty"`
 | 
				
			||||||
	AffiliateCampaignName    string `json:"affiliateCampaignName,omitempty"`
 | 
						AffiliateCampaignName    string `json:"affiliateCampaignName,omitempty"`
 | 
				
			||||||
 | 
					 | 
				
			||||||
	// Campaign
 | 
					 | 
				
			||||||
	CampaignID   string `json:"campaignId,omitempty"`
 | 
					 | 
				
			||||||
	CampaignName string `json:"campaignName,omitempty"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	// SavingCampaign
 | 
					 | 
				
			||||||
	SavingCampaignID   string `json:"savingCampaignId,omitempty"`
 | 
					 | 
				
			||||||
	SavingCampaignName string `json:"savingCampaignName,omitempty"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	SavingCampaignItemID   string `json:"savingCampaignItemId,omitempty"`
 | 
					 | 
				
			||||||
	SavingCampaignItemName string `json:"savingCampaignItemName,omitempty"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// PayloadUpdateSellerSavingCampaignStatistic ...
 | 
					 | 
				
			||||||
type PayloadUpdateSellerSavingCampaignStatistic struct {
 | 
					 | 
				
			||||||
	SellerID  string                        `json:"sellerId"`
 | 
					 | 
				
			||||||
	Statistic SellerSavingCampaignStatistic `json:"statistic"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// SellerSavingCampaignStatistic ...
 | 
					 | 
				
			||||||
type SellerSavingCampaignStatistic struct {
 | 
					 | 
				
			||||||
	SavingCampaignCashPending   float64 `json:"savingCampaignCashPending"`
 | 
					 | 
				
			||||||
	SavingCampaignCashCompleted float64 `json:"savingCampaignCashCompleted"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GenerateVoucherPromotion ...
 | 
					 | 
				
			||||||
type GenerateVoucherPromotion struct {
 | 
					 | 
				
			||||||
	Cash       float64                         `json:"cash"`
 | 
					 | 
				
			||||||
	TargetID   primitive.ObjectID              `json:"targetId"`
 | 
					 | 
				
			||||||
	TargetType string                          `json:"targetType"`
 | 
					 | 
				
			||||||
	Options    GenerateVoucherPromotionOptions `json:"options"`
 | 
					 | 
				
			||||||
	Seller     primitive.ObjectID              `json:"seller"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GenerateVoucherPromotionOptions ...
 | 
					 | 
				
			||||||
type GenerateVoucherPromotionOptions struct {
 | 
					 | 
				
			||||||
	Title string `json:"title"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// SubscriberNotificationTopic ...
 | 
					 | 
				
			||||||
type SubscriberNotificationTopic struct {
 | 
					 | 
				
			||||||
	User     string `json:"user"`
 | 
					 | 
				
			||||||
	Topic    string `json:"topic"`
 | 
					 | 
				
			||||||
	DeviceId string `json:"deviceId"`
 | 
					 | 
				
			||||||
	FCMToken string `json:"fcmToken"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,17 +11,11 @@ func getSellyValue(val string) string {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Selly ...
 | 
					// Selly ...
 | 
				
			||||||
var Selly = struct {
 | 
					var Selly = struct {
 | 
				
			||||||
	PushNotification                    string
 | 
						PushNotification               string
 | 
				
			||||||
	UpdateSellerAffiliateStatistic      string
 | 
						UpdateSellerAffiliateStatistic string
 | 
				
			||||||
	CheckAnDInsertCashflowBySeller      string
 | 
						CheckAnDInsertCashflowBySeller string
 | 
				
			||||||
	SubscriberTopic                     string
 | 
					 | 
				
			||||||
	UpdateSellerSavingCampaignStatistic string
 | 
					 | 
				
			||||||
	GenerateVoucherPromotion            string
 | 
					 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	PushNotification:                    getSellyValue("push_notifications"),
 | 
						PushNotification:               getSellyValue("push_notifications"),
 | 
				
			||||||
	UpdateSellerAffiliateStatistic:      getSellyValue("update_seller_affiliate_statistic"),
 | 
						UpdateSellerAffiliateStatistic: getSellyValue("update_seller_affiliate_statistic"),
 | 
				
			||||||
	CheckAnDInsertCashflowBySeller:      getSellyValue("check_and_insert_cashflow_statistic"),
 | 
						CheckAnDInsertCashflowBySeller: getSellyValue("check_and_insert_cashflow_statistic"),
 | 
				
			||||||
	SubscriberTopic:                     getSellyValue("subscriber_topic"),
 | 
					 | 
				
			||||||
	UpdateSellerSavingCampaignStatistic: getSellyValue("update_seller_saving_campaign_statistic"),
 | 
					 | 
				
			||||||
	GenerateVoucherPromotion:            getSellyValue("generate_voucher_promotion"),
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,16 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "time"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetTransactionsRequest ...
 | 
					 | 
				
			||||||
type GetTransactionsRequest struct {
 | 
					 | 
				
			||||||
	Page     int64     `json:"page"`
 | 
					 | 
				
			||||||
	Limit    int64     `json:"limit"`
 | 
					 | 
				
			||||||
	Keyword  string    `json:"keyword"`
 | 
					 | 
				
			||||||
	Status   string    `json:"status"`
 | 
					 | 
				
			||||||
	Source   string    `json:"source"`
 | 
					 | 
				
			||||||
	Campaign string    `json:"campaign"`
 | 
					 | 
				
			||||||
	Seller   string    `json:"seller"`
 | 
					 | 
				
			||||||
	FromAt   time.Time `json:"fromAt"`
 | 
					 | 
				
			||||||
	ToAt     time.Time `json:"toAt"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,38 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetTransactionsResponse ...
 | 
					 | 
				
			||||||
type GetTransactionsResponse struct {
 | 
					 | 
				
			||||||
	Total int64             `json:"total"`
 | 
					 | 
				
			||||||
	Limit int64             `json:"limit"`
 | 
					 | 
				
			||||||
	List  []TransactionInfo `json:"list"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// TransactionInfo ...
 | 
					 | 
				
			||||||
type TransactionInfo struct {
 | 
					 | 
				
			||||||
	ID                       string                     `json:"_id"`
 | 
					 | 
				
			||||||
	Code                     string                     `json:"code"`
 | 
					 | 
				
			||||||
	Campaign                 ResponseCampaignShort      `json:"campaign"`
 | 
					 | 
				
			||||||
	Seller                   ResponseSellerInfo         `json:"seller"`
 | 
					 | 
				
			||||||
	Source                   string                     `json:"source"`
 | 
					 | 
				
			||||||
	Commission               ResponseCampaignCommission `json:"commission"`
 | 
					 | 
				
			||||||
	EstimateSellerCommission float64                    `json:"estimateSellerCommission"`
 | 
					 | 
				
			||||||
	TransactionTime          string                     `json:"transactionTime"`
 | 
					 | 
				
			||||||
	Status                   string                     `json:"status"`
 | 
					 | 
				
			||||||
	RejectedReason           string                     `json:"rejectedReason"`
 | 
					 | 
				
			||||||
	EstimateCashbackAt       string                     `json:"estimateCashbackAt"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignCommission ...
 | 
					 | 
				
			||||||
type ResponseCampaignCommission struct {
 | 
					 | 
				
			||||||
	Real          float64 `json:"real"`
 | 
					 | 
				
			||||||
	SellerPercent float64 `json:"sellerPercent"`
 | 
					 | 
				
			||||||
	Selly         float64 `json:"selly"`
 | 
					 | 
				
			||||||
	Seller        float64 `json:"seller"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignShort ...
 | 
					 | 
				
			||||||
type ResponseCampaignShort struct {
 | 
					 | 
				
			||||||
	ID   string     `json:"_id"`
 | 
					 | 
				
			||||||
	Name string     `json:"name"`
 | 
					 | 
				
			||||||
	Logo *FilePhoto `json:"logo"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,7 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type CheckPermissionRequest struct {
 | 
				
			||||||
 | 
						Value    []string `json:"value"`
 | 
				
			||||||
 | 
						ID       string   `json:"_id"`
 | 
				
			||||||
 | 
						DeviceID string   `json:"deviceId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
| 
						 | 
					@ -1,11 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// BankBranchBrief ...
 | 
					 | 
				
			||||||
type BankBranchBrief struct {
 | 
					 | 
				
			||||||
	ID       string `json:"_id"`
 | 
					 | 
				
			||||||
	City     string `json:"city"`
 | 
					 | 
				
			||||||
	BankCode string `json:"bankCode"`
 | 
					 | 
				
			||||||
	Bank     string `json:"bank"`
 | 
					 | 
				
			||||||
	Active   bool   `json:"active"`
 | 
					 | 
				
			||||||
	Name     string `json:"name"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,6 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type BankBranchRequest struct {
 | 
					 | 
				
			||||||
	BankID   string `json:"bankId"`
 | 
					 | 
				
			||||||
	BranchID string `json:"branchId"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,11 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type CheckBankAndBranchByIDRequest struct {
 | 
				
			||||||
 | 
						BankID   string `json:"bankId"`
 | 
				
			||||||
 | 
						BranchID string `json:"branchId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetBankInfoRequest struct {
 | 
				
			||||||
 | 
						BankID   string `json:"bankId"`
 | 
				
			||||||
 | 
						BranchID string `json:"branchId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -1,21 +1,40 @@
 | 
				
			||||||
package model
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "time"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// MultiLang ...
 | 
					// MultiLang ...
 | 
				
			||||||
type MultiLang struct {
 | 
					type MultiLang struct {
 | 
				
			||||||
	En string `json:"en"`
 | 
						En string `json:"en"`
 | 
				
			||||||
	Vi string `json:"vi"`
 | 
						Vi string `json:"vi"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// BranchBrief ...
 | 
				
			||||||
 | 
					type BranchBrief struct {
 | 
				
			||||||
 | 
						ID       string `json:"_id"`
 | 
				
			||||||
 | 
						City     string `json:"city"`
 | 
				
			||||||
 | 
						BankCode string `json:"bankCode"`
 | 
				
			||||||
 | 
						BankID   string `json:"bankId"`
 | 
				
			||||||
 | 
						Active   bool   `json:"active"`
 | 
				
			||||||
 | 
						Name     string `json:"name"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// BankBrief ...
 | 
					// BankBrief ...
 | 
				
			||||||
type BankBrief struct {
 | 
					type BankBrief struct {
 | 
				
			||||||
	ID                       string    `json:"_id"`
 | 
						ID                       string      `json:"_id"`
 | 
				
			||||||
	Name                     MultiLang `json:"name"`
 | 
						Name                     MultiLang   `json:"name"`
 | 
				
			||||||
	ShortName                string    `json:"shortName"`
 | 
						ShortName                string      `json:"shortName"`
 | 
				
			||||||
	Active                   bool      `json:"active"`
 | 
						Active                   bool        `json:"active"`
 | 
				
			||||||
	BenBankName              string    `json:"benBankName"`
 | 
						BenBankName              string      `json:"benBankName"`
 | 
				
			||||||
	BankCode                 int       `json:"bankCode"`
 | 
						BankCode                 int         `json:"bankCode"`
 | 
				
			||||||
	IsBranchRequired         bool      `json:"isBranchRequired"`
 | 
						IsBranchRequired         bool        `json:"isBranchRequired"`
 | 
				
			||||||
	SearchString             string    `json:"searchString"`
 | 
						BeneficiaryForVietinbank string      `json:"beneficiaryForVietinbank"`
 | 
				
			||||||
	BeneficiaryForVietinbank string    `json:"beneficiaryForVietinbank"`
 | 
						CreatedBy                string      `json:"createdBy,omitempty"`
 | 
				
			||||||
	CreatedBy                string    `json:"createdBy,omitempty"`
 | 
						CreatedAt                time.Time   `json:"createdAt"`
 | 
				
			||||||
 | 
						BranchTotal              int64       `json:"branchTotal"`
 | 
				
			||||||
 | 
						Logo                     interface{} `json:"logo"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type ResponseBankInfo struct {
 | 
				
			||||||
 | 
						Bank   BankBrief   `json:"bank"`
 | 
				
			||||||
 | 
						Branch BranchBrief `json:"branch"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,22 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"go.mongodb.org/mongo-driver/bson/primitive"
 | 
					 | 
				
			||||||
	"time"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetCampaignTransactionsRequest ...
 | 
					 | 
				
			||||||
type GetCampaignTransactionsRequest struct {
 | 
					 | 
				
			||||||
	Campaign string    `json:"campaign"`
 | 
					 | 
				
			||||||
	Keyword  string    `json:"keyword"`
 | 
					 | 
				
			||||||
	Status   string    `json:"status"`
 | 
					 | 
				
			||||||
	FromAt   time.Time `json:"fromAt"`
 | 
					 | 
				
			||||||
	ToAt     time.Time `json:"toAt"`
 | 
					 | 
				
			||||||
	Page     int64     `json:"page"`
 | 
					 | 
				
			||||||
	Limit    int64     `json:"limit"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// GetCampaignSellerStatisticBySellerIDs ...
 | 
					 | 
				
			||||||
type GetCampaignSellerStatisticBySellerIDs struct {
 | 
					 | 
				
			||||||
	SellerIDs []primitive.ObjectID
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,88 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "go.mongodb.org/mongo-driver/bson/primitive"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignTransactionAll ...
 | 
					 | 
				
			||||||
type ResponseCampaignTransactionAll struct {
 | 
					 | 
				
			||||||
	List  []ResponseNatsCampaignTransaction `json:"list"`
 | 
					 | 
				
			||||||
	Total int64                             `json:"total"`
 | 
					 | 
				
			||||||
	Limit int64                             `json:"limit"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseNatsCampaignTransaction ...
 | 
					 | 
				
			||||||
type ResponseNatsCampaignTransaction struct {
 | 
					 | 
				
			||||||
	ID               string                                       `json:"_id"`
 | 
					 | 
				
			||||||
	Cash             float64                                      `json:"cash"`
 | 
					 | 
				
			||||||
	Campaign         ResponseCampaignShortInfo                    `json:"campaign"`
 | 
					 | 
				
			||||||
	Options          ResponseCampaignTransactionOptions           `json:"options"`
 | 
					 | 
				
			||||||
	Seller           primitive.ObjectID                           `json:"seller"`
 | 
					 | 
				
			||||||
	Type             string                                       `json:"type"`
 | 
					 | 
				
			||||||
	Status           string                                       `json:"status"`
 | 
					 | 
				
			||||||
	RejectedReason   string                                       `json:"rejectedReason"`
 | 
					 | 
				
			||||||
	CreatedAt        string                                       `json:"createdAt"`
 | 
					 | 
				
			||||||
	UpdatedAt        string                                       `json:"updatedAt"`
 | 
					 | 
				
			||||||
	Item             *ResponseCampaignItemShortInfo               `json:"item"`
 | 
					 | 
				
			||||||
	ApprovedBy       primitive.ObjectID                           `json:"approvedBy,omitempty"`
 | 
					 | 
				
			||||||
	RejectedBy       primitive.ObjectID                           `json:"rejectedBy,omitempty"`
 | 
					 | 
				
			||||||
	ApprovedAt       string                                       `json:"approvedAt,omitempty"`
 | 
					 | 
				
			||||||
	RejectedAt       string                                       `json:"rejectedAt,omitempty"`
 | 
					 | 
				
			||||||
	CompletedAt      string                                       `json:"completedAt,omitempty"`
 | 
					 | 
				
			||||||
	RejectReason     string                                       `json:"rejectReason,omitempty"`
 | 
					 | 
				
			||||||
	AdminConfirmData *ResponseCampaignTransactionAdminConfirmData `json:"adminConfirmData,omitempty"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignShortInfo ...
 | 
					 | 
				
			||||||
type ResponseCampaignShortInfo struct {
 | 
					 | 
				
			||||||
	ID     string `json:"_id"`
 | 
					 | 
				
			||||||
	Name   string `json:"name"`
 | 
					 | 
				
			||||||
	Status string `json:"status"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignItemShortInfo ...
 | 
					 | 
				
			||||||
type ResponseCampaignItemShortInfo struct {
 | 
					 | 
				
			||||||
	ID     string `json:"_id"`
 | 
					 | 
				
			||||||
	Name   string `json:"name"`
 | 
					 | 
				
			||||||
	Status string `json:"status"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignTransactionOptions ...
 | 
					 | 
				
			||||||
type ResponseCampaignTransactionOptions struct {
 | 
					 | 
				
			||||||
	Link           string `json:"link"`
 | 
					 | 
				
			||||||
	SocialChannel  string `json:"socialChannel"`
 | 
					 | 
				
			||||||
	Milestone      int64  `json:"milestone"`
 | 
					 | 
				
			||||||
	MilestoneTitle string `json:"milestoneTitle"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignTransactionAdminConfirmData ...
 | 
					 | 
				
			||||||
type ResponseCampaignTransactionAdminConfirmData struct {
 | 
					 | 
				
			||||||
	FriendPublicTotal int64 `json:"friendPublicTotal"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignSellerStatisticList ...
 | 
					 | 
				
			||||||
type ResponseCampaignSellerStatisticList struct {
 | 
					 | 
				
			||||||
	List []ResponseCampaignSellerStatistic `json:"list"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCampaignSellerStatistic ...
 | 
					 | 
				
			||||||
type ResponseCampaignSellerStatistic struct {
 | 
					 | 
				
			||||||
	SellerID  primitive.ObjectID      `json:"sellerId"`
 | 
					 | 
				
			||||||
	Statistic CampaignSellerStatistic `json:"Statistic"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// CampaignSellerStatistic ...
 | 
					 | 
				
			||||||
type CampaignSellerStatistic struct {
 | 
					 | 
				
			||||||
	TotalNotRejected     int64   `bson:"totalNotRejected" json:"totalNotRejected"`
 | 
					 | 
				
			||||||
	CashTotalNotRejected float64 `bson:"cashTotalNotRejected" json:"cashTotalNotRejected"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	TotalCompleted     int64   `bson:"totalCompleted" json:"totalCompleted"`
 | 
					 | 
				
			||||||
	CashTotalCompleted float64 `bson:"cashTotalCompleted" json:"cashTotalCompleted"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	TotalPending     int64   `bson:"totalPending" json:"totalPending"`
 | 
					 | 
				
			||||||
	CashTotalPending float64 `bson:"cashTotalPending" json:"cashTotalPending"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	TotalApproved     int64   `bson:"totalApproved" json:"totalApproved"`
 | 
					 | 
				
			||||||
	CashTotalApproved float64 `bson:"cashTotalApproved" json:"cashTotalApproved"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	TotalRejected     int64   `bson:"totalRejected" json:"totalRejected"`
 | 
					 | 
				
			||||||
	CashTotalRejected float64 `bson:"cashTotalRejected" json:"cashTotalRejected"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -21,6 +21,12 @@ type ActionBy struct {
 | 
				
			||||||
	Name string `json:"name"`
 | 
						Name string `json:"name"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// ClickAction ...
 | 
				
			||||||
 | 
					type ClickAction struct {
 | 
				
			||||||
 | 
						Type  string `json:"type"`
 | 
				
			||||||
 | 
						Value string `json:"value"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// RequestCondition ...
 | 
					// RequestCondition ...
 | 
				
			||||||
type RequestCondition struct {
 | 
					type RequestCondition struct {
 | 
				
			||||||
	Code         int   `json:"code"`
 | 
						Code         int   `json:"code"`
 | 
				
			||||||
| 
						 | 
					@ -43,14 +49,3 @@ type RequestCondition struct {
 | 
				
			||||||
	Page  int64 `json:"page"`
 | 
						Page  int64 `json:"page"`
 | 
				
			||||||
	Limit int64 `json:"limit"`
 | 
						Limit int64 `json:"limit"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
type UpdatePayload struct {
 | 
					 | 
				
			||||||
	Conditions interface{}              `json:"conditions"`
 | 
					 | 
				
			||||||
	Payload    interface{}              `json:"payload"`
 | 
					 | 
				
			||||||
	Opts       []*options.UpdateOptions `json:"opts"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type WebhookPayloadV2 struct {
 | 
					 | 
				
			||||||
	Path string `json:"path"` // request URL path from external
 | 
					 | 
				
			||||||
	Data string `json:"data"` // request body
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,9 +5,6 @@ type CommunicationRequestHttp struct {
 | 
				
			||||||
	ResponseImmediately bool        `json:"responseImmediately"`
 | 
						ResponseImmediately bool        `json:"responseImmediately"`
 | 
				
			||||||
	Authentication      string      `json:"authentication"`
 | 
						Authentication      string      `json:"authentication"`
 | 
				
			||||||
	Payload             HttpRequest `json:"payload"`
 | 
						Payload             HttpRequest `json:"payload"`
 | 
				
			||||||
 | 
					 | 
				
			||||||
	// collection to store log data, will be prepended with log-, default it stored in logs collections
 | 
					 | 
				
			||||||
	LogTarget string `json:"logTarget"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// HttpRequest ...
 | 
					// HttpRequest ...
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,6 @@ package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// LocationRequestPayload ...
 | 
					// LocationRequestPayload ...
 | 
				
			||||||
type (
 | 
					type (
 | 
				
			||||||
	// LocationRequestPayload ...
 | 
					 | 
				
			||||||
	LocationRequestPayload struct {
 | 
						LocationRequestPayload struct {
 | 
				
			||||||
		Province int `json:"province"`
 | 
							Province int `json:"province"`
 | 
				
			||||||
		District int `json:"district"`
 | 
							District int `json:"district"`
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,17 +28,10 @@ type (
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// LocationWard ...
 | 
						// LocationWard ...
 | 
				
			||||||
	LocationWard struct {
 | 
						LocationWard struct {
 | 
				
			||||||
		ID       string       `json:"id"`
 | 
							ID   string `json:"id"`
 | 
				
			||||||
		Name     string       `json:"name"`
 | 
							Name string `json:"name"`
 | 
				
			||||||
		Code     int          `json:"code"`
 | 
							Code int    `json:"code"`
 | 
				
			||||||
		Slug     string       `json:"slug"`
 | 
							Slug string `json:"slug"`
 | 
				
			||||||
		Location *GEOLocation `json:"location"`
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	// GEOLocation ...
 | 
					 | 
				
			||||||
	GEOLocation struct {
 | 
					 | 
				
			||||||
		Type        string    `bson:"type" json:"type"`
 | 
					 | 
				
			||||||
		Coordinates []float64 `bson:"coordinates" json:"coordinates"`
 | 
					 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// LocationProvinceResponse ...
 | 
						// LocationProvinceResponse ...
 | 
				
			||||||
| 
						 | 
					@ -83,13 +76,12 @@ type (
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// LocationWardDetailResponse ...
 | 
						// LocationWardDetailResponse ...
 | 
				
			||||||
	LocationWardDetailResponse struct {
 | 
						LocationWardDetailResponse struct {
 | 
				
			||||||
		ID           string       `json:"_id"`
 | 
							ID           string   `json:"_id"`
 | 
				
			||||||
		Name         string       `json:"name"`
 | 
							Name         string   `json:"name"`
 | 
				
			||||||
		OldSlugs     []string     `json:"oldSlugs"`
 | 
							OldSlugs     []string `json:"oldSlugs"`
 | 
				
			||||||
		Slug         string       `json:"slug"`
 | 
							Slug         string   `json:"slug"`
 | 
				
			||||||
		Code         int          `json:"code"`
 | 
							Code         int      `json:"code"`
 | 
				
			||||||
		DistrictCode int          `json:"districtCode"`
 | 
							DistrictCode int      `json:"districtCode"`
 | 
				
			||||||
		ProvinceCode int          `json:"provinceCode"`
 | 
							ProvinceCode int      `json:"provinceCode"`
 | 
				
			||||||
		Location     *GEOLocation `json:"location"`
 | 
					 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,7 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type NotificationSupplierChangeBalanceRequestApprovedReq struct {
 | 
				
			||||||
 | 
						SupplierID string  `json:"supplierId"`
 | 
				
			||||||
 | 
						Cash       float64 `json:"cash"`
 | 
				
			||||||
 | 
						Reason     string  `json:"reason"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
| 
						 | 
					@ -50,6 +50,6 @@ type OrderSupplierQuery struct {
 | 
				
			||||||
	WarehouseIDs []string `json:"warehouseIDs"`
 | 
						WarehouseIDs []string `json:"warehouseIDs"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type OrderGetTotalWarningPayload struct {
 | 
					type OrderSupplierCashReq struct {
 | 
				
			||||||
	UserID string `json:"userId"`
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -34,9 +34,8 @@ type SupplierOrderDelivery struct {
 | 
				
			||||||
	TPLCode string `json:"tplCode" enums:"SLY,GHTK,GHN,SSC,SPY,VTP,SE,NTL,BEST"`
 | 
						TPLCode string `json:"tplCode" enums:"SLY,GHTK,GHN,SSC,SPY,VTP,SE,NTL,BEST"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// OrderGetTotalWarningRes ...
 | 
					type OrderSupplierCashRes struct {
 | 
				
			||||||
type OrderGetTotalWarningRes struct {
 | 
						PendingCash             float64 `json:"pendingCash"`
 | 
				
			||||||
	UserID            string     `json:"userId"`
 | 
						WaitingForReconcileCash float64 `json:"waitingForReconcileCash"`
 | 
				
			||||||
	TotalWarningOrder int64      `json:"totalWarningOrder"`
 | 
						ReconciledCash          float64 `json:"reconciledCash"`
 | 
				
			||||||
	Action            ActionType `json:"action"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,14 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type ProductApplyRequestPayload struct {
 | 
					 | 
				
			||||||
	RequestID string `json:"requestId"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type ProductCreateStepsPayload struct {
 | 
					 | 
				
			||||||
	RequestID string `json:"requestId"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type ProductRequestChangeStatus struct {
 | 
					 | 
				
			||||||
	RequestID string `json:"requestId"`
 | 
					 | 
				
			||||||
	Status    string `json:"status"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,20 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "go.mongodb.org/mongo-driver/bson/primitive"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type GenerateVoucherPromotionRequest struct {
 | 
					 | 
				
			||||||
	Cash       float64                         `json:"cash"`
 | 
					 | 
				
			||||||
	TargetID   primitive.ObjectID              `json:"targetId"`
 | 
					 | 
				
			||||||
	TargetType string                          `json:"targetType"`
 | 
					 | 
				
			||||||
	Options    GenerateVoucherPromotionOptions `json:"options"`
 | 
					 | 
				
			||||||
	Seller     primitive.ObjectID              `json:"seller"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type GenerateVoucherPromotionOptions struct {
 | 
					 | 
				
			||||||
	Title string `json:"title"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type ResponseGenerateVoucherPromotion struct {
 | 
					 | 
				
			||||||
	Success bool   `json:"success"`
 | 
					 | 
				
			||||||
	Error   string `json:"error"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,8 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type QueueScheduleTaskRequest struct {
 | 
					 | 
				
			||||||
	ID          string `json:"id"`
 | 
					 | 
				
			||||||
	NatsSubject string `json:"natsSubject"`
 | 
					 | 
				
			||||||
	Data        string `json:"data"`
 | 
					 | 
				
			||||||
	StartAt     int64  `json:"startAt"` // unix
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -2,73 +2,17 @@ package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import "go.mongodb.org/mongo-driver/bson/primitive"
 | 
					import "go.mongodb.org/mongo-driver/bson/primitive"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetSellerByIDRequest ...
 | 
				
			||||||
type GetSellerByIDRequest struct {
 | 
					type GetSellerByIDRequest struct {
 | 
				
			||||||
	SellerID primitive.ObjectID `json:"sellerId"`
 | 
						SellerID primitive.ObjectID `json:"sellerId"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetListSellerByIDsRequest ...
 | 
				
			||||||
type GetListSellerByIDsRequest struct {
 | 
					type GetListSellerByIDsRequest struct {
 | 
				
			||||||
	SellerIDs []primitive.ObjectID `json:"sellerIds"`
 | 
						SellerIDs []primitive.ObjectID `json:"sellerIds"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetListSellerSupportChatByIDsRequest ...
 | 
				
			||||||
type GetListSellerSupportChatByIDsRequest struct {
 | 
					type GetListSellerSupportChatByIDsRequest struct {
 | 
				
			||||||
	SellerIDs []primitive.ObjectID `json:"sellerIds"`
 | 
						SellerIDs []primitive.ObjectID `json:"sellerIds"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
type CheckAndInsertCashflowsRequest struct {
 | 
					 | 
				
			||||||
	SellerID string           `json:"sellerId"`
 | 
					 | 
				
			||||||
	List     []CashflowSeller `json:"list"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type CashflowSeller struct {
 | 
					 | 
				
			||||||
	Value      float64          `json:"value"`
 | 
					 | 
				
			||||||
	Action     string           `json:"action"`
 | 
					 | 
				
			||||||
	Category   string           `json:"category"`
 | 
					 | 
				
			||||||
	TargetID   string           `json:"targetId"`
 | 
					 | 
				
			||||||
	TargetType string           `json:"targetType"`
 | 
					 | 
				
			||||||
	Options    *CashFlowOptions `json:"options"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type CashFlowOptions struct {
 | 
					 | 
				
			||||||
	AffiliateTransactionCode string `json:"affiliateTransactionCode,omitempty"`
 | 
					 | 
				
			||||||
	AffiliateCampaignID      string `json:"affiliateCampaignId,omitempty"`
 | 
					 | 
				
			||||||
	AffiliateCampaignName    string `json:"affiliateCampaignName,omitempty"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	// Campaign
 | 
					 | 
				
			||||||
	CampaignID   string `json:"campaignId,omitempty"`
 | 
					 | 
				
			||||||
	CampaignName string `json:"campaignName,omitempty"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	// SavingCampaign
 | 
					 | 
				
			||||||
	SavingCampaignID   string `json:"savingCampaignId,omitempty"`
 | 
					 | 
				
			||||||
	SavingCampaignName string `json:"savingCampaignName,omitempty"`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	SavingCampaignItemID   string `json:"savingCampaignItemId,omitempty"`
 | 
					 | 
				
			||||||
	SavingCampaignItemName string `json:"savingCampaignItemName,omitempty"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type UpdateSellerAffiliateStatisticRequest struct {
 | 
					 | 
				
			||||||
	SellerID  string                   `json:"sellerId"`
 | 
					 | 
				
			||||||
	Statistic SellerAffiliateStatistic `json:"statistic"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type SellerAffiliateStatistic struct {
 | 
					 | 
				
			||||||
	TransactionTotal              int     `json:"transactionTotal"`
 | 
					 | 
				
			||||||
	TransactionCashback           int     `json:"transactionCashback"`
 | 
					 | 
				
			||||||
	TransactionPending            int     `json:"transactionPending"`
 | 
					 | 
				
			||||||
	TransactionApproved           int     `json:"transactionApproved"`
 | 
					 | 
				
			||||||
	TransactionRejected           int     `json:"transactionRejected"`
 | 
					 | 
				
			||||||
	CommissionTransactionTotal    float64 `json:"commissionTransactionTotal"`
 | 
					 | 
				
			||||||
	CommissionTransactionCashback float64 `json:"commissionTransactionCashback"`
 | 
					 | 
				
			||||||
	CommissionTransactionApproved float64 `json:"commissionTransactionApproved"`
 | 
					 | 
				
			||||||
	CommissionTransactionPending  float64 `json:"commissionTransactionPending"`
 | 
					 | 
				
			||||||
	CommissionTransactionRejected float64 `json:"commissionTransactionRejected"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type UpdateSellerSavingCampaignStatisticRequest struct {
 | 
					 | 
				
			||||||
	SellerID  string                        `json:"sellerId"`
 | 
					 | 
				
			||||||
	Statistic SellerSavingCampaignStatistic `json:"statistic"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type SellerSavingCampaignStatistic struct {
 | 
					 | 
				
			||||||
	SavingCampaignCashPending   float64 `json:"savingCampaignCashPending"`
 | 
					 | 
				
			||||||
	SavingCampaignCashCompleted float64 `json:"savingCampaignCashCompleted"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,11 +4,9 @@ import "time"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// ResponseSellerInfo ...
 | 
					// ResponseSellerInfo ...
 | 
				
			||||||
type ResponseSellerInfo struct {
 | 
					type ResponseSellerInfo struct {
 | 
				
			||||||
	ID            string  `json:"_id"`
 | 
						ID   string `json:"_id"`
 | 
				
			||||||
	Name          string  `json:"name"`
 | 
						Name string `json:"name"`
 | 
				
			||||||
	Code          string  `json:"code"`
 | 
						Code string `json:"code"`
 | 
				
			||||||
	IsAccountPro  bool    `json:"isAccountPro"`
 | 
					 | 
				
			||||||
	CashRemaining float64 `json:"cashRemaining"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// ResponseListSellerInfo ...
 | 
					// ResponseListSellerInfo ...
 | 
				
			||||||
| 
						 | 
					@ -90,18 +88,3 @@ type SellerMembershipInfo struct {
 | 
				
			||||||
	Level int    `json:"level"`
 | 
						Level int    `json:"level"`
 | 
				
			||||||
	Name  string `json:"name"`
 | 
						Name  string `json:"name"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
type ResponseCheckAndInsertCashflows struct {
 | 
					 | 
				
			||||||
	Success bool   `json:"success"`
 | 
					 | 
				
			||||||
	Error   string `json:"error"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type ResponseUpdateSellerAffiliateStatistic struct {
 | 
					 | 
				
			||||||
	Success bool   `json:"success"`
 | 
					 | 
				
			||||||
	Error   string `json:"error"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type ResponseUpdateSellerSavingCampaignStatistic struct {
 | 
					 | 
				
			||||||
	Success bool   `json:"success"`
 | 
					 | 
				
			||||||
	Error   string `json:"error"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,7 +44,7 @@ type SocialPostSellerInfo struct {
 | 
				
			||||||
	ID         primitive.ObjectID   `json:"_id"`
 | 
						ID         primitive.ObjectID   `json:"_id"`
 | 
				
			||||||
	Name       string               `json:"name"`
 | 
						Name       string               `json:"name"`
 | 
				
			||||||
	Membership SellerMembershipInfo `json:"membership"`
 | 
						Membership SellerMembershipInfo `json:"membership"`
 | 
				
			||||||
	Logo       *FilePhoto           `json:"avatar"`
 | 
						Logo       *FilePhoto           `json:"logo"`
 | 
				
			||||||
	IsMine     bool                 `json:"isMine"`
 | 
						IsMine     bool                 `json:"isMine"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,19 +0,0 @@
 | 
				
			||||||
package model
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// PayloadEmitSocketEvent ...
 | 
					 | 
				
			||||||
type PayloadEmitSocketEvent struct {
 | 
					 | 
				
			||||||
	User        string `json:"user"`
 | 
					 | 
				
			||||||
	Message     string `json:"message"`
 | 
					 | 
				
			||||||
	Data        string `json:"data"`
 | 
					 | 
				
			||||||
	IsNotRemove bool   `json:"isNotRemove"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// PayloadEventSocketReward ...
 | 
					 | 
				
			||||||
type PayloadEventSocketReward struct {
 | 
					 | 
				
			||||||
	Type    string      `json:"type"`
 | 
					 | 
				
			||||||
	Title   string      `json:"title"`
 | 
					 | 
				
			||||||
	Cash    float64     `json:"cash"`
 | 
					 | 
				
			||||||
	Message string      `json:"message"`
 | 
					 | 
				
			||||||
	Photo   interface{} `json:"photo"`
 | 
					 | 
				
			||||||
	Action  *ActionType `json:"action"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,24 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListPermissionRequest struct {
 | 
				
			||||||
 | 
						Page  int    `json:"page"`
 | 
				
			||||||
 | 
						Limit int    `json:"limit"`
 | 
				
			||||||
 | 
						Group string `json:"group"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type DetailPermissionRequest struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type CreatePermissionRequest struct {
 | 
				
			||||||
 | 
						Name  string `json:"name"`
 | 
				
			||||||
 | 
						Code  string `json:"code"`
 | 
				
			||||||
 | 
						Group string `json:"group"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type UpdatePermissionRequest struct {
 | 
				
			||||||
 | 
						ID    string `json:"_id"`
 | 
				
			||||||
 | 
						Name  string `json:"name"`
 | 
				
			||||||
 | 
						Code  string `json:"code"`
 | 
				
			||||||
 | 
						Group string `json:"group"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,26 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListPermissionResponse struct {
 | 
				
			||||||
 | 
						Permissions []PermissionBrief `json:"permissions"`
 | 
				
			||||||
 | 
						Total       int64             `json:"total"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type PermissionBrief struct {
 | 
				
			||||||
 | 
						ID        string `json:"_id"`
 | 
				
			||||||
 | 
						Name      string `json:"name"`
 | 
				
			||||||
 | 
						Code      string `json:"code"`
 | 
				
			||||||
 | 
						Group     string `json:"group"`
 | 
				
			||||||
 | 
						CreatedAt string `json:"createdAt"`
 | 
				
			||||||
 | 
						UpdatedAt string `json:"updatedAt"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type CreatePermissionResponse struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type PermissionShort struct {
 | 
				
			||||||
 | 
						ID    string `json:"_id"`
 | 
				
			||||||
 | 
						Name  string `json:"name"`
 | 
				
			||||||
 | 
						Code  string `json:"code"`
 | 
				
			||||||
 | 
						Group string `json:"group"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -9,11 +9,6 @@ type GetSupplierRequest struct {
 | 
				
			||||||
	ListID []primitive.ObjectID `json:"listID"`
 | 
						ListID []primitive.ObjectID `json:"listID"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetDetailSupplierRequest ...
 | 
					 | 
				
			||||||
type GetDetailSupplierRequest struct {
 | 
					 | 
				
			||||||
	Supplier string `json:"supplier"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type GetSupplierContractRequest struct {
 | 
					type GetSupplierContractRequest struct {
 | 
				
			||||||
	SupplierID primitive.ObjectID `json:"supplierID"`
 | 
						SupplierID primitive.ObjectID `json:"supplierID"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -28,20 +23,30 @@ type SupplierRequestPayload struct {
 | 
				
			||||||
	ContractStatus string
 | 
						ContractStatus string
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type CreateSupplierWarehousePayload struct {
 | 
					// SupplierCashflowCreatePayload ...
 | 
				
			||||||
	Supplier     string `json:"supplier"`
 | 
					type SupplierCashflowCreatePayload struct {
 | 
				
			||||||
	Warehouse    string `json:"warehouse"`
 | 
						Supplier    string       `json:"supplier"`
 | 
				
			||||||
	ProvinceCode int    `json:"provinceCode"`
 | 
						Action      string       `json:"action"`
 | 
				
			||||||
	DistrictCode int    `json:"districtCode"`
 | 
						Name        string       `json:"name"`
 | 
				
			||||||
	WardCode     int    `json:"wardCode"`
 | 
						TargetID    string       `json:"targetId"`
 | 
				
			||||||
 | 
						Value       float64      `json:"value"`
 | 
				
			||||||
 | 
						ClickAction *ClickAction `json:"clickAction"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type UpdateSupplierWarehousePayload struct {
 | 
					type SupplierFreeShipInfoRequestPayload struct {
 | 
				
			||||||
	Supplier     string `json:"supplier"`
 | 
						SupplierIDs []string `json:"supplierIds"`
 | 
				
			||||||
	Warehouse    string `json:"warehouse"`
 | 
					}
 | 
				
			||||||
	ProvinceCode int    `json:"provinceCode"`
 | 
					
 | 
				
			||||||
	DistrictCode int    `json:"districtCode"`
 | 
					type SupplierUpdateBalanceReq struct {
 | 
				
			||||||
	WardCode     int    `json:"wardCode"`
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierGetCurrentBalanceReq struct {
 | 
				
			||||||
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierDeleteCashflowReq struct {
 | 
				
			||||||
 | 
						CashflowID string `json:"cashflowId"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type SupplierFindAllReq struct {
 | 
					type SupplierFindAllReq struct {
 | 
				
			||||||
| 
						 | 
					@ -49,11 +54,4 @@ type SupplierFindAllReq struct {
 | 
				
			||||||
	Limit   int64    `json:"limit"`
 | 
						Limit   int64    `json:"limit"`
 | 
				
			||||||
	Segment string   `json:"segment"`
 | 
						Segment string   `json:"segment"`
 | 
				
			||||||
	IDs     []string `json:"ids"`
 | 
						IDs     []string `json:"ids"`
 | 
				
			||||||
	Status  string   `json:"status"` // active,inactive
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type SupplierCountReq struct {
 | 
					 | 
				
			||||||
	Segment string   `json:"segment"`
 | 
					 | 
				
			||||||
	IDs     []string `json:"ids"`
 | 
					 | 
				
			||||||
	Status  string   `json:"status"` // active,inactive
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,7 +5,6 @@ type ResponseSupplierInfo struct {
 | 
				
			||||||
	ID           string `json:"id"`
 | 
						ID           string `json:"id"`
 | 
				
			||||||
	Name         string `json:"name"`
 | 
						Name         string `json:"name"`
 | 
				
			||||||
	BusinessType string `json:"businessType"`
 | 
						BusinessType string `json:"businessType"`
 | 
				
			||||||
	IsSellyMall  bool   `json:"isSellyMall"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// ResponseSupplierContract ...
 | 
					// ResponseSupplierContract ...
 | 
				
			||||||
| 
						 | 
					@ -31,6 +30,53 @@ type SupplierAll struct {
 | 
				
			||||||
	Total     int64           `json:"total"`
 | 
						Total     int64           `json:"total"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type SupplierCountRes struct {
 | 
					type SupplierListWarehouseFreeShipResponse struct {
 | 
				
			||||||
	Total int64 `json:"total"`
 | 
						Warehouses []string `json:"warehouses"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierCashflowCreateResponse struct {
 | 
				
			||||||
 | 
						ID string `json:"id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type FreeShip struct {
 | 
				
			||||||
 | 
						ID                string   `json:"_id"`
 | 
				
			||||||
 | 
						ShortName         string   `json:"shortName"`
 | 
				
			||||||
 | 
						ListMilestoneText []string `json:"milestoneText"`
 | 
				
			||||||
 | 
						Order             int      `json:"-"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierFreeShipInfoResponse struct {
 | 
				
			||||||
 | 
						SupplierID string     `json:"supplierId"`
 | 
				
			||||||
 | 
						FreeShips  []FreeShip `json:"freeShips"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierShort struct {
 | 
				
			||||||
 | 
						ID   string      `json:"_id"`
 | 
				
			||||||
 | 
						Name string      `json:"name"`
 | 
				
			||||||
 | 
						Logo interface{} `json:"logo"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierUpdateBalanceRes struct {
 | 
				
			||||||
 | 
						CurrentCash                  float64 `json:"currentCash"`
 | 
				
			||||||
 | 
						TotalPendingCash             float64 `json:"totalPendingCash"`
 | 
				
			||||||
 | 
						OrderPendingCash             float64 `json:"orderPendingCash"`
 | 
				
			||||||
 | 
						OrderWaitingForReconcileCash float64 `json:"orderWaitingForReconcileCash"`
 | 
				
			||||||
 | 
						OrderReconciledCash          float64 `json:"orderReconciledCash"`
 | 
				
			||||||
 | 
						WithdrawPendingCash          float64 `json:"withdrawPendingCash"`
 | 
				
			||||||
 | 
						WithdrawSuccessCash          float64 `json:"withdrawSuccessCash"`
 | 
				
			||||||
 | 
						WithdrawRejectCash           float64 `json:"withdrawRejectCash"`
 | 
				
			||||||
 | 
						ChangeBalanceRequestApproved float64 `json:"changeBalanceRequestApproved"`
 | 
				
			||||||
 | 
						UpdatedAt                    string  `json:"updatedAt"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierGetCurrentBalanceRes struct {
 | 
				
			||||||
 | 
						CurrentCash float64 `json:"currentCash"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SyncSupplierWarehousePayload struct {
 | 
				
			||||||
 | 
						Supplier     string `json:"supplier"`
 | 
				
			||||||
 | 
						Warehouse    string `json:"warehouse"`
 | 
				
			||||||
 | 
						ProvinceCode int    `json:"provinceCode"`
 | 
				
			||||||
 | 
						DistrictCode int    `json:"districtCode"`
 | 
				
			||||||
 | 
						WardCode     int    `json:"wardCode"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,14 +1,29 @@
 | 
				
			||||||
package model
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListRoleRequest struct {
 | 
				
			||||||
 | 
						Page       int    `json:"page"`
 | 
				
			||||||
 | 
						Limit      int    `json:"limit"`
 | 
				
			||||||
 | 
						Type       string `json:"type"`
 | 
				
			||||||
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type DetailRoleRequest struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type CreateRoleRequest struct {
 | 
					type CreateRoleRequest struct {
 | 
				
			||||||
	Name string `json:"name"`
 | 
						Name        string   `json:"name"`
 | 
				
			||||||
	Code string `json:"code"`
 | 
						Code        string   `json:"code"`
 | 
				
			||||||
	Type string `json:"type"`
 | 
						Type        string   `json:"type"`
 | 
				
			||||||
 | 
						SupplierID  string   `json:"supplierId"`
 | 
				
			||||||
 | 
						Permissions []string `json:"permissions"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type UpdateRoleRequest struct {
 | 
					type UpdateRoleRequest struct {
 | 
				
			||||||
	ID   string `json:"_id"`
 | 
						ID          string   `json:"_id"`
 | 
				
			||||||
	Name string `json:"name"`
 | 
						Name        string   `json:"name"`
 | 
				
			||||||
	Code string `json:"code"`
 | 
						Code        string   `json:"code"`
 | 
				
			||||||
	Type string `json:"type"`
 | 
						Type        string   `json:"type"`
 | 
				
			||||||
 | 
						SupplierID  string   `json:"supplierId"`
 | 
				
			||||||
 | 
						Permissions []string `json:"permissions"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,29 @@
 | 
				
			||||||
package model
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListRoleResponse struct {
 | 
				
			||||||
 | 
						Roles []RoleBrief `json:"roles"`
 | 
				
			||||||
 | 
						Total int64       `json:"total"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type RoleBrief struct {
 | 
				
			||||||
 | 
						ID          string            `json:"_id"`
 | 
				
			||||||
 | 
						Name        string            `json:"name"`
 | 
				
			||||||
 | 
						Code        string            `json:"code"`
 | 
				
			||||||
 | 
						Type        string            `json:"type"`
 | 
				
			||||||
 | 
						Permissions []PermissionShort `json:"permissions"`
 | 
				
			||||||
 | 
						SupplierId  string            `json:"supplierId"`
 | 
				
			||||||
 | 
						CreatedAt   string            `json:"createdAt"`
 | 
				
			||||||
 | 
						UpdatedAt   string            `json:"updatedAt"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type CreateRoleResponse struct {
 | 
					type CreateRoleResponse struct {
 | 
				
			||||||
	ID string `json:"_id"`
 | 
						ID string `json:"_id"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type RoleShort struct {
 | 
				
			||||||
 | 
						ID         string `json:"_id"`
 | 
				
			||||||
 | 
						Name       string `json:"name"`
 | 
				
			||||||
 | 
						Code       string `json:"code"`
 | 
				
			||||||
 | 
						Type       string `json:"type"`
 | 
				
			||||||
 | 
						SupplierId string `json:"supplierId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,12 +1,44 @@
 | 
				
			||||||
package model
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type LoginUserRequest struct {
 | 
				
			||||||
 | 
						Email        string `json:"email"`
 | 
				
			||||||
 | 
						Password     string `json:"password"`
 | 
				
			||||||
 | 
						DeviceID     string `json:"deviceId"`
 | 
				
			||||||
 | 
						AppVersion   string `json:"appVersion"`
 | 
				
			||||||
 | 
						UserAgent    string `json:"userAgent"`
 | 
				
			||||||
 | 
						Model        string `json:"model"`
 | 
				
			||||||
 | 
						Manufacturer string `json:"manufacturer"`
 | 
				
			||||||
 | 
						IP           string `json:"ip"`
 | 
				
			||||||
 | 
						Language     string `json:"language"`
 | 
				
			||||||
 | 
						FCMToken     string `json:"FCMToken"`
 | 
				
			||||||
 | 
						AuthToken    string `json:"authToken"`
 | 
				
			||||||
 | 
						OsName       string `json:"osName"`
 | 
				
			||||||
 | 
						OsVersion    string `json:"osVersion"`
 | 
				
			||||||
 | 
						IsMobile     bool   `json:"isMobile"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type LogoutRequest struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListUserRequest struct {
 | 
				
			||||||
 | 
						Page       int    `json:"page"`
 | 
				
			||||||
 | 
						Limit      int    `json:"limit"`
 | 
				
			||||||
 | 
						Status     string `json:"status"`
 | 
				
			||||||
 | 
						Type       string `json:"type"`
 | 
				
			||||||
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type DetailUserRequest struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type CreateOwnerRequest struct {
 | 
					type CreateOwnerRequest struct {
 | 
				
			||||||
	Name       string `json:"name"`
 | 
						Name       string `json:"name"`
 | 
				
			||||||
	Phone      string `json:"phone"`
 | 
						Phone      string `json:"phone"`
 | 
				
			||||||
	Email      string `json:"email"`
 | 
						Email      string `json:"email"`
 | 
				
			||||||
	SupplierID string `json:"supplierId"`
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
	RoleID     string `json:"roleId"`
 | 
						RoleID     string `json:"roleId"`
 | 
				
			||||||
	Password   string `json:"password"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type UpdateOwnerRequest struct {
 | 
					type UpdateOwnerRequest struct {
 | 
				
			||||||
| 
						 | 
					@ -24,7 +56,6 @@ type CreateStaffRequest struct {
 | 
				
			||||||
	Email      string   `json:"email"`
 | 
						Email      string   `json:"email"`
 | 
				
			||||||
	SupplierID string   `json:"supplierId"`
 | 
						SupplierID string   `json:"supplierId"`
 | 
				
			||||||
	RoleID     string   `json:"roleId"`
 | 
						RoleID     string   `json:"roleId"`
 | 
				
			||||||
	Password   string   `json:"password"`
 | 
					 | 
				
			||||||
	Warehouses []string `json:"warehouses"`
 | 
						Warehouses []string `json:"warehouses"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -46,12 +77,10 @@ type UpdateStatusRequest struct {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type ResetPasswordRequest struct {
 | 
					type ResetPasswordRequest struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type ChangePasswordRequest struct {
 | 
				
			||||||
	ID       string `json:"_id"`
 | 
						ID       string `json:"_id"`
 | 
				
			||||||
	Password string `json:"password"`
 | 
						Password string `json:"password"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
// CheckTokenSupplierUserPayload ...
 | 
					 | 
				
			||||||
type CheckTokenSupplierUserPayload struct {
 | 
					 | 
				
			||||||
	Token       string   `json:"token"`
 | 
					 | 
				
			||||||
	Permissions []string `json:"permissions"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,33 @@
 | 
				
			||||||
package model
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// LoginUserResponse ...
 | 
				
			||||||
 | 
					type LoginUserResponse struct {
 | 
				
			||||||
 | 
						ID                      string `json:"_id"`
 | 
				
			||||||
 | 
						RequireToChangePassword bool   `json:"requireToChangePassword"`
 | 
				
			||||||
 | 
						SupplierID              string `json:"supplierId"`
 | 
				
			||||||
 | 
						Name                    string `json:"name"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListUserResponse struct {
 | 
				
			||||||
 | 
						SupplierUsers []SupplierUserBrief `json:"supplierUsers"`
 | 
				
			||||||
 | 
						Total         int64               `json:"total"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type SupplierUserBrief struct {
 | 
				
			||||||
 | 
						ID         string      `json:"_id"`
 | 
				
			||||||
 | 
						Role       RoleShort   `json:"role"`
 | 
				
			||||||
 | 
						SupplierID string      `json:"supplierId"`
 | 
				
			||||||
 | 
						Name       string      `json:"name"`
 | 
				
			||||||
 | 
						Phone      string      `json:"phone"`
 | 
				
			||||||
 | 
						Email      string      `json:"email"`
 | 
				
			||||||
 | 
						Status     string      `json:"status"`
 | 
				
			||||||
 | 
						Avatar     interface{} `json:"avatar"`
 | 
				
			||||||
 | 
						Type       string      `json:"type"`
 | 
				
			||||||
 | 
						Warehouses []string    `json:"warehouses"`
 | 
				
			||||||
 | 
						CreatedAt  string      `json:"createdAt"`
 | 
				
			||||||
 | 
						UpdatedAt  string      `json:"updatedAt"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type CreateOwnerResponse struct {
 | 
					type CreateOwnerResponse struct {
 | 
				
			||||||
	ID string `json:"_id"`
 | 
						ID string `json:"_id"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -11,16 +39,3 @@ type CreateStaffResponse struct {
 | 
				
			||||||
type ResetPasswordResponse struct {
 | 
					type ResetPasswordResponse struct {
 | 
				
			||||||
	Password string `json:"password"`
 | 
						Password string `json:"password"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
// ResponseCheckTokenSupplierUser ...
 | 
					 | 
				
			||||||
type ResponseCheckTokenSupplierUser struct {
 | 
					 | 
				
			||||||
	IsValid bool                     `json:"isValid"`
 | 
					 | 
				
			||||||
	Reason  string                   `json:"reason"`
 | 
					 | 
				
			||||||
	User    ResponseSupplierUserInfo `json:"supplier"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type ResponseSupplierUserInfo struct {
 | 
					 | 
				
			||||||
	ID         string `json:"_id"`
 | 
					 | 
				
			||||||
	Name       string `json:"name"`
 | 
					 | 
				
			||||||
	SupplierID string `json:"supplierId"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -37,12 +37,11 @@ type InsuranceOpts struct {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// OutboundRequestItem ...
 | 
					// OutboundRequestItem ...
 | 
				
			||||||
type OutboundRequestItem struct {
 | 
					type OutboundRequestItem struct {
 | 
				
			||||||
	SupplierSKU        string  `json:"supplierSKU"`
 | 
						SupplierSKU string  `json:"supplierSKU"`
 | 
				
			||||||
	Quantity           int64   `json:"quantity"`
 | 
						Quantity    int64   `json:"quantity"`
 | 
				
			||||||
	UnitCode           string  `json:"unitCode"`
 | 
						UnitCode    string  `json:"unitCode"`
 | 
				
			||||||
	Price              float64 `json:"price"`
 | 
						Price       float64 `json:"price"`
 | 
				
			||||||
	Name               string  `json:"name"`
 | 
						Name        string  `json:"name"`
 | 
				
			||||||
	PartnerProductCode string  `json:"partnerProductCode"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// CustomerInfo ...
 | 
					// CustomerInfo ...
 | 
				
			||||||
| 
						 | 
					@ -64,12 +63,11 @@ type AddressDetail struct {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// UpdateOutboundRequestLogisticInfoPayload ...
 | 
					// UpdateOutboundRequestLogisticInfoPayload ...
 | 
				
			||||||
type UpdateOutboundRequestLogisticInfoPayload struct {
 | 
					type UpdateOutboundRequestLogisticInfoPayload struct {
 | 
				
			||||||
	ShippingLabel  string `json:"shippingLabel,omitempty"`
 | 
						ShippingLabel string `json:"shippingLabel"`
 | 
				
			||||||
	TrackingCode   string `json:"trackingCode,omitempty"`
 | 
						TrackingCode  string `json:"trackingCode"`
 | 
				
			||||||
	ORCode         string `json:"orCode,omitempty"`
 | 
						ORCode        string `json:"orCode"`
 | 
				
			||||||
	TPLCode        string `json:"tplCode,omitempty"`
 | 
						TPLCode       string `json:"tplCode"`
 | 
				
			||||||
	OrderID        string `json:"orderId"`
 | 
						OrderID       string `json:"orderId"`
 | 
				
			||||||
	DeliveryStatus string `json:"deliveryStatus,omitempty"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// CancelOutboundRequest ...
 | 
					// CancelOutboundRequest ...
 | 
				
			||||||
| 
						 | 
					@ -99,11 +97,10 @@ type SupplierIsClosed struct {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GetWarehousesRequest ...
 | 
					// GetWarehousesRequest ...
 | 
				
			||||||
type GetWarehousesRequest struct {
 | 
					type GetWarehousesRequest struct {
 | 
				
			||||||
	Keyword      string   `json:"keyword"`
 | 
						Keyword      string `json:"keyword"`
 | 
				
			||||||
	Status       string   `json:"status"`
 | 
						Status       string `json:"status"`
 | 
				
			||||||
	Supplier     string   `json:"supplier"`
 | 
						Supplier     string `json:"supplier"`
 | 
				
			||||||
	BusinessType string   `json:"businessType"`
 | 
						BusinessType string `json:"businessType"`
 | 
				
			||||||
	IDs          []string `json:"ids"`
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	Page  int64 `json:"page"`
 | 
						Page  int64 `json:"page"`
 | 
				
			||||||
	Limit int64 `json:"limit"`
 | 
						Limit int64 `json:"limit"`
 | 
				
			||||||
| 
						 | 
					@ -116,24 +113,3 @@ type WarehouseORUpdateDeliveryStatus struct {
 | 
				
			||||||
	OrderID        string `json:"orderId"`
 | 
						OrderID        string `json:"orderId"`
 | 
				
			||||||
	DeliveryStatus string `json:"deliveryStatus"`
 | 
						DeliveryStatus string `json:"deliveryStatus"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
// UpdateStatusWarehousePendingInactiveRequest ...
 | 
					 | 
				
			||||||
type UpdateStatusWarehousePendingInactiveRequest struct {
 | 
					 | 
				
			||||||
	Warehouses []UpdateStatusWarehousePendingInactive `json:"warehouses"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// UpdateIsSellyMallRequest ...
 | 
					 | 
				
			||||||
type UpdateIsSellyMallRequest struct {
 | 
					 | 
				
			||||||
	SupplierID string `json:"supplier"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// UpdateStatusWarehousePendingInactive ...
 | 
					 | 
				
			||||||
type UpdateStatusWarehousePendingInactive struct {
 | 
					 | 
				
			||||||
	WarehouseID     string `json:"warehouse"`
 | 
					 | 
				
			||||||
	PendingInactive bool   `json:"pendingInactive"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type GetListWarehouseConfigReq struct {
 | 
					 | 
				
			||||||
	PartnerCode         string `json:"partnerCode"`
 | 
					 | 
				
			||||||
	PartnerIdentityCode string `json:"partnerIdentityCode"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -61,28 +61,16 @@ type WarehouseSupplier struct {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// WarehouseOrder ...
 | 
					// WarehouseOrder ...
 | 
				
			||||||
type WarehouseOrder struct {
 | 
					type WarehouseOrder struct {
 | 
				
			||||||
	MinimumValue                   float64                         `json:"minimumValue"`
 | 
						MinimumValue             float64                `json:"minimumValue"`
 | 
				
			||||||
	PaymentMethod                  WarehousePaymentMethod          `json:"paymentMethod"`
 | 
						PaymentMethod            WarehousePaymentMethod `json:"paymentMethod"`
 | 
				
			||||||
	IsLimitNumberOfPurchases       bool                            `json:"isLimitNumberOfPurchases"`
 | 
						IsLimitNumberOfPurchases bool                   `json:"isLimitNumberOfPurchases"`
 | 
				
			||||||
	LimitNumberOfPurchases         int64                           `json:"limitNumberOfPurchases"`
 | 
						LimitNumberOfPurchases   int64                  `json:"limitNumberOfPurchases"`
 | 
				
			||||||
	NotifyOnNewOrder               WarehouseConfigNotifyOnNewOrder `json:"notifyOnNewOrder"`
 | 
					 | 
				
			||||||
	LabelSize                      string                          `json:"labelSize"`
 | 
					 | 
				
			||||||
	MaximumOrderValue              float64                         `json:"maximumOrderValue"`
 | 
					 | 
				
			||||||
	MaximumNumberPerBuyerEachMonth int64                           `json:"maximumNumberPerBuyerEachMonth"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// WarehouseConfigNotifyOnNewOrder ...
 | 
					 | 
				
			||||||
type WarehouseConfigNotifyOnNewOrder struct {
 | 
					 | 
				
			||||||
	Enable  bool   `bson:"enable" json:"enable"`
 | 
					 | 
				
			||||||
	Channel string `bson:"channel" json:"channel"`
 | 
					 | 
				
			||||||
	RoomID  string `bson:"roomId" json:"roomId"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// WarehousePaymentMethod ...
 | 
					// WarehousePaymentMethod ...
 | 
				
			||||||
type WarehousePaymentMethod struct {
 | 
					type WarehousePaymentMethod struct {
 | 
				
			||||||
	Cod          bool `json:"cod"`
 | 
						Cod          bool `json:"cod"`
 | 
				
			||||||
	BankTransfer bool `json:"bankTransfer"`
 | 
						BankTransfer bool `json:"bankTransfer"`
 | 
				
			||||||
	Fundiin      bool `json:"fundiin"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// WarehouseDelivery ...
 | 
					// WarehouseDelivery ...
 | 
				
			||||||
| 
						 | 
					@ -131,6 +119,7 @@ type CommonLocation struct {
 | 
				
			||||||
	ID   string `json:"id"`
 | 
						ID   string `json:"id"`
 | 
				
			||||||
	Name string `json:"name"`
 | 
						Name string `json:"name"`
 | 
				
			||||||
	Code int    `json:"code"`
 | 
						Code int    `json:"code"`
 | 
				
			||||||
 | 
						Slug string `json:"slug"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// ResponseLatLng ...
 | 
					// ResponseLatLng ...
 | 
				
			||||||
| 
						 | 
					@ -141,23 +130,19 @@ type ResponseLatLng struct {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// WarehouseNatsResponse ...
 | 
					// WarehouseNatsResponse ...
 | 
				
			||||||
type WarehouseNatsResponse struct {
 | 
					type WarehouseNatsResponse struct {
 | 
				
			||||||
	ID                    string                    `json:"_id"`
 | 
						ID             string                    `json:"_id"`
 | 
				
			||||||
	Staff                 string                    `json:"staff"`
 | 
						Staff          string                    `json:"staff"`
 | 
				
			||||||
	BusinessType          string                    `json:"businessType"`
 | 
						BusinessType   string                    `json:"businessType"`
 | 
				
			||||||
	Name                  string                    `json:"name"`
 | 
						Name           string                    `json:"name"`
 | 
				
			||||||
	SearchString          string                    `json:"searchString"`
 | 
						SearchString   string                    `json:"searchString"`
 | 
				
			||||||
	Slug                  string                    `json:"slug"`
 | 
						Slug           string                    `json:"slug"`
 | 
				
			||||||
	Status                string                    `json:"status"`
 | 
						Status         string                    `json:"status"`
 | 
				
			||||||
	Supplier              string                    `json:"supplier"`
 | 
						Supplier       string                    `json:"supplier"`
 | 
				
			||||||
	Contact               ResponseWarehouseContact  `json:"contact"`
 | 
						Contact        ResponseWarehouseContact  `json:"contact"`
 | 
				
			||||||
	Location              ResponseWarehouseLocation `json:"location"`
 | 
						Location       ResponseWarehouseLocation `json:"location"`
 | 
				
			||||||
	Configurations        WarehouseConfiguration    `json:"configurations"`
 | 
						Configurations WarehouseConfiguration    `json:"configurations"`
 | 
				
			||||||
	CreatedAt             time.Time                 `json:"createdAt"`
 | 
						CreatedAt      time.Time                 `json:"createdAt"`
 | 
				
			||||||
	UpdatedAt             time.Time                 `json:"updatedAt"`
 | 
						UpdatedAt      time.Time                 `json:"updatedAt"`
 | 
				
			||||||
	ReasonPendingInactive string                    `json:"reasonPendingInactive"`
 | 
					 | 
				
			||||||
	IsPendingInactive     bool                      `json:"isPendingInactive"`
 | 
					 | 
				
			||||||
	IsFromInternational   bool                      `json:"isFromInternational"`
 | 
					 | 
				
			||||||
	StoreCode             string                    `json:"storeCode"`
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// WarehouseInfo ...
 | 
					// WarehouseInfo ...
 | 
				
			||||||
| 
						 | 
					@ -186,9 +171,3 @@ type GetWarehousesResponse struct {
 | 
				
			||||||
	Limit int64           `json:"limit"`
 | 
						Limit int64           `json:"limit"`
 | 
				
			||||||
	List  []WarehouseInfo `json:"list"`
 | 
						List  []WarehouseInfo `json:"list"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
type GetListWarehouseConfigRes struct {
 | 
					 | 
				
			||||||
	Total int64                    `json:"total"`
 | 
					 | 
				
			||||||
	Limit int64                    `json:"limit"`
 | 
					 | 
				
			||||||
	List  []WarehouseConfiguration `json:"list"`
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,5 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type WithdrawSupplierCashReq struct {
 | 
				
			||||||
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,7 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type WithdrawSupplierCashRes struct {
 | 
				
			||||||
 | 
						PendingCash float64 `json:"pendingCash"`
 | 
				
			||||||
 | 
						SuccessCash float64 `json:"successCash"`
 | 
				
			||||||
 | 
						RejectCash  float64 `json:"rejectCash"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -1,13 +0,0 @@
 | 
				
			||||||
package subject
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "fmt"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func getAffiliateValue(val string) string {
 | 
					 | 
				
			||||||
	return fmt.Sprintf("%s.%s", prefixes.Affiliate, val)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var Affiliate = struct {
 | 
					 | 
				
			||||||
	GetTransactions string
 | 
					 | 
				
			||||||
}{
 | 
					 | 
				
			||||||
	GetTransactions: getAffiliateValue("get_transactions"),
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func getAuthSMSValue(val string) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%s.%s", prefixes.AuthSMS, val)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var AuthSMS = struct {
 | 
				
			||||||
 | 
						// AuthSMS
 | 
				
			||||||
 | 
						CheckPermission string
 | 
				
			||||||
 | 
					}{
 | 
				
			||||||
 | 
						// Users
 | 
				
			||||||
 | 
						CheckPermission: getAuthSMSValue("check_permission"),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -7,11 +7,11 @@ func getBankValue(val string) string {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var Bank = struct {
 | 
					var Bank = struct {
 | 
				
			||||||
	GetBankById            string
 | 
						GetBankInfo            string
 | 
				
			||||||
	GetBankBranchById      string
 | 
						GetBankInfoDetail      string
 | 
				
			||||||
	CheckBankAndBranchByID string
 | 
						CheckBankAndBranchByID string
 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	GetBankById:            getBankValue("get_bank_by_id"),
 | 
						GetBankInfo:            getBankValue("get_bank_info"),
 | 
				
			||||||
	GetBankBranchById:      getBankValue("get_bank_branch_by_id"),
 | 
						GetBankInfoDetail:      getBankValue("get_bank_info_detail"),
 | 
				
			||||||
	CheckBankAndBranchByID: getBankValue("check_bank_and_brach_by_id"),
 | 
						CheckBankAndBranchByID: getBankValue("check_bank_and_branch_by_id"),
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,17 +0,0 @@
 | 
				
			||||||
package subject
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "fmt"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// getCampaignValue ...
 | 
					 | 
				
			||||||
func getCampaignValue(val string) string {
 | 
					 | 
				
			||||||
	return fmt.Sprintf("%s.%s", prefixes.Campaign, val)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Campaign ...
 | 
					 | 
				
			||||||
var Campaign = struct {
 | 
					 | 
				
			||||||
	GetListCampaignTransactionAdminInfoByIDs string
 | 
					 | 
				
			||||||
	GetCampaignSellerStatisticBySellerIDs    string
 | 
					 | 
				
			||||||
}{
 | 
					 | 
				
			||||||
	GetListCampaignTransactionAdminInfoByIDs: getCampaignValue("get_list_campaign_transaction_admin_info_by_ids"),
 | 
					 | 
				
			||||||
	GetCampaignSellerStatisticBySellerIDs:    getCampaignValue("get_campaign_seller_statistic_by_seller_ids"),
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,43 +1,40 @@
 | 
				
			||||||
package subject
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var prefixes = struct {
 | 
					var prefixes = struct {
 | 
				
			||||||
	Communication string
 | 
						Communication      string
 | 
				
			||||||
	Order         string
 | 
						Order              string
 | 
				
			||||||
	News          string
 | 
						News               string
 | 
				
			||||||
	Warehouse     string
 | 
						Warehouse          string
 | 
				
			||||||
	Location      string
 | 
						Location           string
 | 
				
			||||||
	Bank          string
 | 
						Bank               string
 | 
				
			||||||
	Supplier      string
 | 
						Supplier           string
 | 
				
			||||||
	Seller        string
 | 
						Seller             string
 | 
				
			||||||
	SupplierUser  string
 | 
						AuthSMS            string
 | 
				
			||||||
	SupplierRole  string
 | 
						Selly              string
 | 
				
			||||||
	SocialPost    string
 | 
						SupplierUser       string
 | 
				
			||||||
	Staff         string
 | 
						SupplierRole       string
 | 
				
			||||||
	Segment       string
 | 
						SupplierPermission string
 | 
				
			||||||
	Product       string
 | 
						Withdraw           string
 | 
				
			||||||
	Queue         string
 | 
						Notification       string
 | 
				
			||||||
	Campaign      string
 | 
						SocialPost         string
 | 
				
			||||||
	Affiliate     string
 | 
						Staff              string
 | 
				
			||||||
	Socket        string
 | 
						Segment            string
 | 
				
			||||||
	Promotion     string
 | 
					 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	Communication: "communication",
 | 
						Communication:      "communication",
 | 
				
			||||||
	Order:         "order",
 | 
						Order:              "order",
 | 
				
			||||||
	News:          "news",
 | 
						News:               "news",
 | 
				
			||||||
	Warehouse:     "warehouse",
 | 
						Warehouse:          "warehouse",
 | 
				
			||||||
	Location:      "location",
 | 
						Location:           "location",
 | 
				
			||||||
	Supplier:      "supplier",
 | 
						Supplier:           "supplier",
 | 
				
			||||||
	Bank:          "bank",
 | 
						Bank:               "bank",
 | 
				
			||||||
	Seller:        "seller",
 | 
						Seller:             "seller",
 | 
				
			||||||
	SupplierUser:  "supplier_user",
 | 
						AuthSMS:            "auth_sms",
 | 
				
			||||||
	SupplierRole:  "supplier_role",
 | 
						Selly:              "selly",
 | 
				
			||||||
	SocialPost:    "social_post",
 | 
						SupplierUser:       "supplier_user",
 | 
				
			||||||
	Staff:         "staff",
 | 
						SupplierRole:       "supplier_role",
 | 
				
			||||||
	Segment:       "segment",
 | 
						SupplierPermission: "supplier_permission",
 | 
				
			||||||
	Product:       "product",
 | 
						Withdraw:           "withdraw",
 | 
				
			||||||
	Queue:         "queue",
 | 
						Notification:       "notification",
 | 
				
			||||||
	Campaign:      "campaign",
 | 
						SocialPost:         "social_post",
 | 
				
			||||||
	Affiliate:     "affiliate",
 | 
						Staff:              "staff",
 | 
				
			||||||
	Socket:        "socket",
 | 
					 | 
				
			||||||
	Promotion:     "promotion",
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7,43 +7,41 @@ func getLocationValue(val string) string {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var Location = struct {
 | 
					var Location = struct {
 | 
				
			||||||
	GetLocationByCode                      string
 | 
						GetLocationByCode         string
 | 
				
			||||||
	GetLocationByCodeFromLocationService   string
 | 
						GetLocationByCodeNew      string
 | 
				
			||||||
	GetLocationByWardCode                  string
 | 
						GetProvincesByCodes       string
 | 
				
			||||||
	GetProvincesByCodes                    string
 | 
						GetProvincesByCodesNew    string
 | 
				
			||||||
	GetProvincesByCodesFromLocationService string
 | 
						GetDistrictsByCodes       string
 | 
				
			||||||
	GetDistrictsByCodes                    string
 | 
						GetDistrictsByCodesNew    string
 | 
				
			||||||
	GetDistrictsByCodesFromLocationService string
 | 
						GetWardsByCodes           string
 | 
				
			||||||
	GetWardsByCodes                        string
 | 
						GetWardsByCodesNew        string
 | 
				
			||||||
	GetWardsByCodesFromLocationService     string
 | 
						GetProvinceByCondition    string
 | 
				
			||||||
	GetProvinceByCondition                 string
 | 
						GetProvincesByCondition   string
 | 
				
			||||||
	GetProvincesByCondition                string
 | 
						GetDistrictByCondition    string
 | 
				
			||||||
	GetDistrictByCondition                 string
 | 
						GetDistrictsByCondition   string
 | 
				
			||||||
	GetDistrictsByCondition                string
 | 
						GetWardByCondition        string
 | 
				
			||||||
	GetWardByCondition                     string
 | 
						GetWardsByCondition       string
 | 
				
			||||||
	GetWardsByCondition                    string
 | 
						CountProvinceByCondition  string
 | 
				
			||||||
	CountProvinceByCondition               string
 | 
						CountDistrictByCondition  string
 | 
				
			||||||
	CountDistrictByCondition               string
 | 
						CountWardByCondition      string
 | 
				
			||||||
	CountWardByCondition                   string
 | 
						ProvinceDistinctWithField string
 | 
				
			||||||
	ProvinceDistinctWithField              string
 | 
					 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	GetLocationByCode:                      getLocationValue("get_location_warehouse"),
 | 
						GetLocationByCode:         getLocationValue("get_location_warehouse"),
 | 
				
			||||||
	GetLocationByCodeFromLocationService:   getLocationValue("get_location_warehouse_from_location_service"),
 | 
						GetLocationByCodeNew:      getLocationValue("get_location_warehouse_new"),
 | 
				
			||||||
	GetLocationByWardCode:                  getLocationValue("get_location_by_ward_code"),
 | 
						GetProvincesByCodes:       getLocationValue("get_provinces_by_codes"),
 | 
				
			||||||
	GetProvincesByCodes:                    getLocationValue("get_provinces_by_codes"),
 | 
						GetProvincesByCodesNew:    getLocationValue("get_provinces_by_codes_new"),
 | 
				
			||||||
	GetProvincesByCodesFromLocationService: getLocationValue("get_provinces_by_codes_from_location_service"),
 | 
						GetDistrictsByCodes:       getLocationValue("get_districts_by_codes"),
 | 
				
			||||||
	GetDistrictsByCodes:                    getLocationValue("get_districts_by_codes"),
 | 
						GetDistrictsByCodesNew:    getLocationValue("get_districts_by_codes_new"),
 | 
				
			||||||
	GetDistrictsByCodesFromLocationService: getLocationValue("get_districts_by_codes_from_location_service"),
 | 
						GetWardsByCodes:           getLocationValue("get_wards_by_codes"),
 | 
				
			||||||
	GetWardsByCodes:                        getLocationValue("get_wards_by_codes"),
 | 
						GetWardsByCodesNew:        getLocationValue("get_wards_by_codes_new"),
 | 
				
			||||||
	GetWardsByCodesFromLocationService:     getLocationValue("get_wards_by_codes_from_location_service"),
 | 
						GetProvinceByCondition:    getLocationValue("get_province_by_condition"),
 | 
				
			||||||
	GetProvinceByCondition:                 getLocationValue("get_province_by_condition"),
 | 
						GetProvincesByCondition:   getLocationValue("get_provinces_by_condition"),
 | 
				
			||||||
	GetProvincesByCondition:                getLocationValue("get_provinces_by_condition"),
 | 
						GetDistrictByCondition:    getLocationValue("get_district_by_condition"),
 | 
				
			||||||
	GetDistrictByCondition:                 getLocationValue("get_district_by_condition"),
 | 
						GetDistrictsByCondition:   getLocationValue("get_districts_byCondition"),
 | 
				
			||||||
	GetDistrictsByCondition:                getLocationValue("get_districts_byCondition"),
 | 
						GetWardByCondition:        getLocationValue("get_ward_by_condition"),
 | 
				
			||||||
	GetWardByCondition:                     getLocationValue("get_ward_by_condition"),
 | 
						GetWardsByCondition:       getLocationValue("get_wards_by_condition"),
 | 
				
			||||||
	GetWardsByCondition:                    getLocationValue("get_wards_by_condition"),
 | 
						CountProvinceByCondition:  getLocationValue("count_province_by_condition"),
 | 
				
			||||||
	CountProvinceByCondition:               getLocationValue("count_province_by_condition"),
 | 
						CountDistrictByCondition:  getLocationValue("count_district_by_condition"),
 | 
				
			||||||
	CountDistrictByCondition:               getLocationValue("count_district_by_condition"),
 | 
						CountWardByCondition:      getLocationValue("count_ward_by_condition"),
 | 
				
			||||||
	CountWardByCondition:                   getLocationValue("count_ward_by_condition"),
 | 
						ProvinceDistinctWithField: getLocationValue("province_distinct_with_field"),
 | 
				
			||||||
	ProvinceDistinctWithField:              getLocationValue("province_distinct_with_field"),
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,13 @@
 | 
				
			||||||
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func getNotificationValue(val string) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%s.%s", prefixes.Notification, val)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var Notification = struct {
 | 
				
			||||||
 | 
						SupplierChangeBalanceRequestApproved string
 | 
				
			||||||
 | 
					}{
 | 
				
			||||||
 | 
						SupplierChangeBalanceRequestApproved: getNotificationValue("supplier_change_balance_request_approved"),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -7,19 +7,19 @@ func getOrderValue(val string) string {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var Order = struct {
 | 
					var Order = struct {
 | 
				
			||||||
	UpdateORStatus            string
 | 
						UpdateORStatus           string
 | 
				
			||||||
	GetUserTotalWarningOrders string
 | 
						CancelDelivery           string
 | 
				
			||||||
	CancelDelivery            string
 | 
						ChangeDeliveryStatus     string
 | 
				
			||||||
	ChangeDeliveryStatus      string
 | 
						UpdateLogisticInfoFailed string
 | 
				
			||||||
	UpdateLogisticInfoFailed  string
 | 
						ORNotUpdateStatus        string
 | 
				
			||||||
	ORNotUpdateStatus         string
 | 
						GetSupplierOrders        string
 | 
				
			||||||
	GetSupplierOrders         string
 | 
						GetSupplierCash          string
 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	UpdateORStatus:            getOrderValue("update_outbound_request_status"),
 | 
						UpdateORStatus:           getOrderValue("update_outbound_request_status"),
 | 
				
			||||||
	GetUserTotalWarningOrders: getOrderValue("get_user_total_warning_orders"),
 | 
						CancelDelivery:           getOrderValue("cancel_delivery"),
 | 
				
			||||||
	CancelDelivery:            getOrderValue("cancel_delivery"),
 | 
						ChangeDeliveryStatus:     getOrderValue("change_delivery_status"),
 | 
				
			||||||
	ChangeDeliveryStatus:      getOrderValue("change_delivery_status"),
 | 
						UpdateLogisticInfoFailed: getOrderValue("update_logistic_info_failed"),
 | 
				
			||||||
	UpdateLogisticInfoFailed:  getOrderValue("update_logistic_info_failed"),
 | 
						ORNotUpdateStatus:        getOrderValue("outbound_request_not_update_status"),
 | 
				
			||||||
	ORNotUpdateStatus:         getOrderValue("outbound_request_not_update_status"),
 | 
						GetSupplierOrders:        getOrderValue("get_supplier_orders"),
 | 
				
			||||||
	GetSupplierOrders:         getOrderValue("get_supplier_orders"),
 | 
						GetSupplierCash:          getOrderValue("get_supplier_cash"),
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,26 +0,0 @@
 | 
				
			||||||
package subject
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "fmt"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// getSegmentValue ...
 | 
					 | 
				
			||||||
func getProductValue(val string) string {
 | 
					 | 
				
			||||||
	return fmt.Sprintf("%s.%s", prefixes.Product, val)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var Product = struct {
 | 
					 | 
				
			||||||
	ApplyRequest                                        string
 | 
					 | 
				
			||||||
	CreateRequestStep                                   string
 | 
					 | 
				
			||||||
	ProcessApplyRequest                                 string
 | 
					 | 
				
			||||||
	RequestChangeStatus                                 string
 | 
					 | 
				
			||||||
	WebhookStockUpdate                                  string // WebhookStockUpdate Kiotviet queue
 | 
					 | 
				
			||||||
	OPWebhookStockUpdate                                string // OPWebhookStockUpdate Onpoint queue
 | 
					 | 
				
			||||||
	OrderPaymentBankTransferWebhookCheckAndUpdateStatus string
 | 
					 | 
				
			||||||
}{
 | 
					 | 
				
			||||||
	ApplyRequest:         getProductValue("apply_request"),
 | 
					 | 
				
			||||||
	CreateRequestStep:    getProductValue("create_request_step"),
 | 
					 | 
				
			||||||
	ProcessApplyRequest:  getProductValue("process_apply_request"),
 | 
					 | 
				
			||||||
	RequestChangeStatus:  getProductValue("request_change_status"),
 | 
					 | 
				
			||||||
	WebhookStockUpdate:   getProductValue("webhook_stock_update"),
 | 
					 | 
				
			||||||
	OPWebhookStockUpdate: getProductValue("op_webhook_stock_update"),
 | 
					 | 
				
			||||||
	OrderPaymentBankTransferWebhookCheckAndUpdateStatus: getProductValue("order_payment_bank_transfer_webhook_check_and_update_status"),
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,13 +0,0 @@
 | 
				
			||||||
package subject
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "fmt"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func getPromotionValue(val string) string {
 | 
					 | 
				
			||||||
	return fmt.Sprintf("%s.%s", prefixes.Promotion, val)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var Promotion = struct {
 | 
					 | 
				
			||||||
	GenerateVoucherPromotion string
 | 
					 | 
				
			||||||
}{
 | 
					 | 
				
			||||||
	GenerateVoucherPromotion: getPromotionValue("generate_voucher_promotion"),
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,13 +0,0 @@
 | 
				
			||||||
package subject
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "fmt"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func getQueueValue(val string) string {
 | 
					 | 
				
			||||||
	return fmt.Sprintf("%s.%s", prefixes.Queue, val)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var Queue = struct {
 | 
					 | 
				
			||||||
	ScheduleTask string
 | 
					 | 
				
			||||||
}{
 | 
					 | 
				
			||||||
	ScheduleTask: getQueueValue("schedule_task"),
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -8,17 +8,11 @@ func getSellerValue(val string) string {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Seller ...
 | 
					// Seller ...
 | 
				
			||||||
var Seller = struct {
 | 
					var Seller = struct {
 | 
				
			||||||
	GetSellerInfoByID                   string
 | 
						GetSellerInfoByID      string
 | 
				
			||||||
	GetListSellerInfoByIDs              string
 | 
						GetListSellerInfoByIDs string
 | 
				
			||||||
	CheckAndInsertCashflows             string
 | 
					 | 
				
			||||||
	UpdateSellerAffiliateStatistic      string
 | 
					 | 
				
			||||||
	UpdateSellerSavingCampaignStatistic string
 | 
					 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	GetSellerInfoByID:                   getSellerValue("get_seller_info_by_id"),
 | 
						GetSellerInfoByID:      getSellerValue("get_seller_info_by_id"),
 | 
				
			||||||
	GetListSellerInfoByIDs:              getSellerValue("get_list_seller_info_by_ids"),
 | 
						GetListSellerInfoByIDs: getSellerValue("get_list_seller_info_by_ids"),
 | 
				
			||||||
	CheckAndInsertCashflows:             getSellerValue("check_and_insert_cashflows"),
 | 
					 | 
				
			||||||
	UpdateSellerAffiliateStatistic:      getSellerValue("update_seller_affiliate_statistic"),
 | 
					 | 
				
			||||||
	UpdateSellerSavingCampaignStatistic: getSellerValue("update_seller_saving_campaign_statistic"),
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// SupportChat ...
 | 
					// SupportChat ...
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,16 +0,0 @@
 | 
				
			||||||
package subject
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "fmt"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func getSocketValue(val string) string {
 | 
					 | 
				
			||||||
	return fmt.Sprintf("%s.%s", prefixes.Socket, val)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Socket ...
 | 
					 | 
				
			||||||
var Socket = struct {
 | 
					 | 
				
			||||||
	EmitEventReward string
 | 
					 | 
				
			||||||
	EmitEventToUser string
 | 
					 | 
				
			||||||
}{
 | 
					 | 
				
			||||||
	EmitEventReward: getSocketValue("emit_event_reward"),
 | 
					 | 
				
			||||||
	EmitEventToUser: "send_message_to_socket",
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
| 
						 | 
					@ -8,16 +8,24 @@ func getSupplierValue(val string) string {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var Supplier = struct {
 | 
					var Supplier = struct {
 | 
				
			||||||
	GetListSupplierInfo             string
 | 
						GetListSupplierInfo             string
 | 
				
			||||||
	GetDetailSupplierInfo           string
 | 
					 | 
				
			||||||
	GetSupplierContractBySupplierID string
 | 
						GetSupplierContractBySupplierID string
 | 
				
			||||||
	FindAll                         string
 | 
						FindAll                         string
 | 
				
			||||||
 | 
						GetListWarehouseFreeShip        string
 | 
				
			||||||
 | 
						CreateCashflow                  string
 | 
				
			||||||
 | 
						DeleteCashflow                  string
 | 
				
			||||||
 | 
						UpdateBalance                   string
 | 
				
			||||||
 | 
						GetCurrentBalance               string
 | 
				
			||||||
 | 
						GetFreeShipInfo                 string
 | 
				
			||||||
	FindAllOld                      string
 | 
						FindAllOld                      string
 | 
				
			||||||
	Count                           string
 | 
					 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	GetListSupplierInfo:             getSupplierValue("get_list_supplier_info"),
 | 
						GetListSupplierInfo:             getSupplierValue("get_list_supplier_info"),
 | 
				
			||||||
	GetDetailSupplierInfo:           getSupplierValue("get_detail_supplier_info"),
 | 
					 | 
				
			||||||
	GetSupplierContractBySupplierID: getSupplierValue("get_supplier_contract_by_supplier_id"),
 | 
						GetSupplierContractBySupplierID: getSupplierValue("get_supplier_contract_by_supplier_id"),
 | 
				
			||||||
	FindAll:                         getSupplierValue("find_all"),
 | 
						FindAll:                         getSupplierValue("find_all"),
 | 
				
			||||||
 | 
						GetListWarehouseFreeShip:        getSupplierValue("get_list_warehouse_free_ship"),
 | 
				
			||||||
 | 
						CreateCashflow:                  getSupplierValue("create_cashflow"),
 | 
				
			||||||
 | 
						DeleteCashflow:                  getSupplierValue("delete_cashflow"),
 | 
				
			||||||
 | 
						UpdateBalance:                   getSupplierValue("update_balance"),
 | 
				
			||||||
 | 
						GetCurrentBalance:               getSupplierValue("get_current_balance"),
 | 
				
			||||||
 | 
						GetFreeShipInfo:                 getSupplierValue("get_free_ship_info"),
 | 
				
			||||||
	FindAllOld:                      getSupplierValue("find_all_old"),
 | 
						FindAllOld:                      getSupplierValue("find_all_old"),
 | 
				
			||||||
	Count:                           getSupplierValue("count"),
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,17 @@
 | 
				
			||||||
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func getPermissionValue(val string) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%s.%s", prefixes.SupplierPermission, val)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var SupplierPermission = struct {
 | 
				
			||||||
 | 
						GetList string
 | 
				
			||||||
 | 
						Create  string
 | 
				
			||||||
 | 
						Update  string
 | 
				
			||||||
 | 
					}{
 | 
				
			||||||
 | 
						GetList: getPermissionValue("get_list"),
 | 
				
			||||||
 | 
						Create:  getPermissionValue("create"),
 | 
				
			||||||
 | 
						Update:  getPermissionValue("update"),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -7,9 +7,15 @@ func getRoleValue(val string) string {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var SupplierRole = struct {
 | 
					var SupplierRole = struct {
 | 
				
			||||||
	Create string
 | 
						GetList             string
 | 
				
			||||||
	Update string
 | 
						Detail              string
 | 
				
			||||||
 | 
						Create              string
 | 
				
			||||||
 | 
						Update              string
 | 
				
			||||||
 | 
						GetListBySupplierID string
 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	Create: getRoleValue("create"),
 | 
						GetList:             getRoleValue("get_list"),
 | 
				
			||||||
	Update: getRoleValue("update"),
 | 
						Detail:              getRoleValue("detail"),
 | 
				
			||||||
 | 
						Create:              getRoleValue("create"),
 | 
				
			||||||
 | 
						Update:              getRoleValue("update"),
 | 
				
			||||||
 | 
						GetListBySupplierID: getRoleValue("get_list_by_supplierId"),
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,20 +8,28 @@ func getSupplierUserValue(val string) string {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var SupplierUser = struct {
 | 
					var SupplierUser = struct {
 | 
				
			||||||
	// Users
 | 
						// Users
 | 
				
			||||||
	CreateOwner            string
 | 
						LoginUser      string
 | 
				
			||||||
	UpdateOwner            string
 | 
						Logout         string
 | 
				
			||||||
	CreateStaff            string
 | 
						GetListUser    string
 | 
				
			||||||
	UpdateStaff            string
 | 
						DetailUser     string
 | 
				
			||||||
	UpdateStatus           string
 | 
						CreateOwner    string
 | 
				
			||||||
	ResetPassword          string
 | 
						UpdateOwner    string
 | 
				
			||||||
	CheckTokenSupplierUser string
 | 
						CreateStaff    string
 | 
				
			||||||
 | 
						UpdateStaff    string
 | 
				
			||||||
 | 
						UpdateStatus   string
 | 
				
			||||||
 | 
						ResetPassword  string
 | 
				
			||||||
 | 
						ChangePassword string
 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	// Users
 | 
						// Users
 | 
				
			||||||
	CreateOwner:            getSupplierUserValue("create_owner"),
 | 
						LoginUser:      getSupplierUserValue("login_user"),
 | 
				
			||||||
	UpdateOwner:            getSupplierUserValue("update_owner"),
 | 
						Logout:         getSupplierUserValue("logout"),
 | 
				
			||||||
	CreateStaff:            getSupplierUserValue("create_staff"),
 | 
						GetListUser:    getSupplierUserValue("get_list_user"),
 | 
				
			||||||
	UpdateStaff:            getSupplierUserValue("update_staff"),
 | 
						DetailUser:     getSupplierUserValue("detail_user"),
 | 
				
			||||||
	UpdateStatus:           getSupplierUserValue("update_status"),
 | 
						CreateOwner:    getSupplierUserValue("create_owner"),
 | 
				
			||||||
	ResetPassword:          getSupplierUserValue("reset_password"),
 | 
						UpdateOwner:    getSupplierUserValue("update_owner"),
 | 
				
			||||||
	CheckTokenSupplierUser: getSupplierUserValue("check_token_supplier_user"),
 | 
						CreateStaff:    getSupplierUserValue("create_staff"),
 | 
				
			||||||
 | 
						UpdateStaff:    getSupplierUserValue("update_staff"),
 | 
				
			||||||
 | 
						UpdateStatus:   getSupplierUserValue("update_status"),
 | 
				
			||||||
 | 
						ResetPassword:  getSupplierUserValue("reset_password"),
 | 
				
			||||||
 | 
						ChangePassword: getSupplierUserValue("change_password"),
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,63 +1,47 @@
 | 
				
			||||||
package subject
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import "fmt"
 | 
				
			||||||
	"fmt"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
func getWarehouseValue(val string) string {
 | 
					func getWarehouseValue(val string) string {
 | 
				
			||||||
	return fmt.Sprintf("%s.%s", prefixes.Warehouse, val)
 | 
						return fmt.Sprintf("%s.%s", prefixes.Warehouse, val)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var Warehouse = struct {
 | 
					var Warehouse = struct {
 | 
				
			||||||
	CreateWarehouseIntoServiceSupplier   string
 | 
						SyncWarehouseIntoServiceSupplier string
 | 
				
			||||||
	UpdateWarehouseIntoServiceSupplier   string
 | 
						CreateOutboundRequest            string
 | 
				
			||||||
	CreateOutboundRequest                string
 | 
						UpdateOutboundRequestLogistic    string
 | 
				
			||||||
	UpdateOutboundRequestLogistic        string
 | 
						CancelOutboundRequest            string
 | 
				
			||||||
	CancelOutboundRequest                string
 | 
						GetConfiguration                 string
 | 
				
			||||||
	GetConfiguration                     string
 | 
						SyncORStatus                     string
 | 
				
			||||||
	SyncORStatus                         string
 | 
						WebhookTNC                       string
 | 
				
			||||||
	WebhookTNC                           string
 | 
						WebhookGlobalCare                string
 | 
				
			||||||
	WebhookGlobalCare                    string
 | 
						WebhookOnPoint                   string
 | 
				
			||||||
	WebhookOnPoint                       string
 | 
						FindOne                          string
 | 
				
			||||||
	WebhookViettelFFM                    string
 | 
						FindByCondition                  string
 | 
				
			||||||
	FindOne                              string
 | 
						Distinct                         string
 | 
				
			||||||
	FindByCondition                      string
 | 
						Count                            string
 | 
				
			||||||
	Distinct                             string
 | 
						AfterUpdateWarehouse             string
 | 
				
			||||||
	Count                                string
 | 
						AfterCreateWarehouse             string
 | 
				
			||||||
	AfterUpdateWarehouse                 string
 | 
						UpdateIsClosedSupplier           string
 | 
				
			||||||
	AfterCreateWarehouse                 string
 | 
						GetWarehouses                    string
 | 
				
			||||||
	UpdateIsClosedSupplier               string
 | 
						UpdateORDeliveryStatus           string
 | 
				
			||||||
	GetWarehouses                        string
 | 
					 | 
				
			||||||
	UpdateORDeliveryStatus               string
 | 
					 | 
				
			||||||
	UpdateStatusWarehousePendingInactive string
 | 
					 | 
				
			||||||
	UpdateIsSellyMall                    string
 | 
					 | 
				
			||||||
	UpdateWarehouseConfig                string
 | 
					 | 
				
			||||||
	BulkWriteWarehouseConfig             string
 | 
					 | 
				
			||||||
	GetListWarehouseConfig               string
 | 
					 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	CreateWarehouseIntoServiceSupplier:   getWarehouseValue("create_warehouse_into_service_supplier"),
 | 
						SyncWarehouseIntoServiceSupplier: getWarehouseValue("sync_warehouse_into_service_supplier"),
 | 
				
			||||||
	UpdateWarehouseIntoServiceSupplier:   getWarehouseValue("update_warehouse_into_service_supplier"),
 | 
						AfterCreateWarehouse:             getWarehouseValue("after_create_warehouse"),
 | 
				
			||||||
	AfterCreateWarehouse:                 getWarehouseValue("after_create_warehouse"),
 | 
						AfterUpdateWarehouse:             getWarehouseValue("after_update_warehouse"),
 | 
				
			||||||
	AfterUpdateWarehouse:                 getWarehouseValue("after_update_warehouse"),
 | 
						CreateOutboundRequest:            getWarehouseValue("create_outbound_request"),
 | 
				
			||||||
	CreateOutboundRequest:                getWarehouseValue("create_outbound_request"),
 | 
						UpdateOutboundRequestLogistic:    getWarehouseValue("update_outbound_request_logistic_info"),
 | 
				
			||||||
	UpdateOutboundRequestLogistic:        getWarehouseValue("update_outbound_request_logistic_info"),
 | 
						CancelOutboundRequest:            getWarehouseValue("cancel_outbound_request"),
 | 
				
			||||||
	CancelOutboundRequest:                getWarehouseValue("cancel_outbound_request"),
 | 
						GetConfiguration:                 getWarehouseValue("get_configuration"),
 | 
				
			||||||
	GetConfiguration:                     getWarehouseValue("get_configuration"),
 | 
						SyncORStatus:                     getWarehouseValue("sync_or_status"),
 | 
				
			||||||
	SyncORStatus:                         getWarehouseValue("sync_or_status"),
 | 
						WebhookTNC:                       getWarehouseValue("webhook_tnc"),
 | 
				
			||||||
	WebhookTNC:                           getWarehouseValue("webhook_tnc"),
 | 
						WebhookGlobalCare:                getWarehouseValue("webhook_global_care"),
 | 
				
			||||||
	WebhookGlobalCare:                    getWarehouseValue("webhook_global_care"),
 | 
						WebhookOnPoint:                   getWarehouseValue("webhook_on_point"),
 | 
				
			||||||
	WebhookOnPoint:                       getWarehouseValue("webhook_on_point"),
 | 
						FindOne:                          getWarehouseValue("find_one"),
 | 
				
			||||||
	WebhookViettelFFM:                    getWarehouseValue("webhook_viettel_ffm"),
 | 
						FindByCondition:                  getWarehouseValue("find_all_by_condition"),
 | 
				
			||||||
	FindOne:                              getWarehouseValue("find_one"),
 | 
						Distinct:                         getWarehouseValue("distinct"),
 | 
				
			||||||
	FindByCondition:                      getWarehouseValue("find_all_by_condition"),
 | 
						Count:                            getWarehouseValue("count"),
 | 
				
			||||||
	Distinct:                             getWarehouseValue("distinct"),
 | 
						UpdateIsClosedSupplier:           getWarehouseValue("update_is_closed_supplier"),
 | 
				
			||||||
	Count:                                getWarehouseValue("count"),
 | 
						GetWarehouses:                    getWarehouseValue("get_warehouses"),
 | 
				
			||||||
	UpdateIsClosedSupplier:               getWarehouseValue("update_is_closed_supplier"),
 | 
						UpdateORDeliveryStatus:           getWarehouseValue("update_or_delivery_status"),
 | 
				
			||||||
	GetWarehouses:                        getWarehouseValue("get_warehouses"),
 | 
					 | 
				
			||||||
	UpdateORDeliveryStatus:               getWarehouseValue("update_or_delivery_status"),
 | 
					 | 
				
			||||||
	UpdateStatusWarehousePendingInactive: getWarehouseValue("update_status_warehouse_pending_inactive"),
 | 
					 | 
				
			||||||
	UpdateIsSellyMall:                    getWarehouseValue("update_is_selly_mall"),
 | 
					 | 
				
			||||||
	UpdateWarehouseConfig:                getWarehouseValue("update_warehouse_config"),
 | 
					 | 
				
			||||||
	BulkWriteWarehouseConfig:             getWarehouseValue("bulk_write_warehouse_config"),
 | 
					 | 
				
			||||||
	GetListWarehouseConfig:               getWarehouseValue("get_list_warehouse_config"),
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,13 @@
 | 
				
			||||||
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func getWithdrawValue(val string) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%s.%s", prefixes.Withdraw, val)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var Withdraw = struct {
 | 
				
			||||||
 | 
						GetSupplierCash string
 | 
				
			||||||
 | 
					}{
 | 
				
			||||||
 | 
						GetSupplierCash: getWithdrawValue("get_supplier_cash"),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
		Reference in New Issue