Compare commits

..

160 Commits

Author SHA1 Message Date
Minh Nguyen 9c48edf1e3 Merge pull request 'add-field-store-code-warehouse' (#177) from feature/add-field-store-code-warehouse into master
Reviewed-on: #177
2024-08-08 06:49:02 +00:00
Nguyen Minh 78194a2d43 add-field-store-code-warehouse 2024-08-05 10:18:45 +07:00
sinhluu 0f40121bf7 Merge pull request 'viettel-ffm' (#175) from viettel-ffm into master
Reviewed-on: #175
2024-07-11 03:01:10 +00:00
Minh Nguyen de84fdc2bf Merge pull request 'webhook-vietinbank' (#174) from feature/webhook-vietinbank into master
Reviewed-on: #174
2024-07-09 02:26:16 +00:00
Minh Nguyen 72d45ed239 Merge pull request 'feature/limit-create-order-based-warehouse-conditions' (#173) from feature/limit-create-order-based-warehouse-conditions into master
Reviewed-on: #173
Reviewed-by: trunglam <trunglam@selly.vn>
2024-07-09 02:25:45 +00:00
Nguyen Minh a4a6f31ec6 webhook-vietinbank 2024-07-05 11:47:41 +07:00
Nguyen Minh 7ab8f1f3a5 update 2024-07-03 16:45:50 +07:00
Nguyen Minh ff223e2b46 update model warehouse response nats 2024-07-03 15:36:56 +07:00
Sinh 2b0d33efc2 update nats subject 2024-06-18 15:14:57 +07:00
Sinh dfdccfa86a add partner product code 2024-06-18 11:11:24 +07:00
sinhluu 1384cae433 Merge pull request 'onpoint-stock-update' (#166) from onpoint-stock-update into master
Reviewed-on: #166
2024-05-08 07:18:01 +00:00
sinhluu c82bf48503 Merge pull request 'feat(wh_cfg): update warehouse config model' (#169) from warehouse-label-size into master
Reviewed-on: #169
2024-05-06 03:09:19 +00:00
Minh Nguyen 2e5a5b5f0f Merge pull request '/warehouse-international' (#168) from feature/warehouse-international into master
Reviewed-on: #168
2024-04-15 09:31:10 +00:00
Nguyen Minh 2d04611fee /warehouse-international 2024-04-15 11:59:54 +07:00
Sinh 1d0b13285a feat(wh_cfg): update warehouse config model 2024-04-12 10:17:40 +07:00
Minh Nguyen 2b9092ecbe Merge pull request 'feature/update-location-ward' (#164) from feature/update-location-ward into master
Reviewed-on: #164
Reviewed-by: trunglam <trunglam@selly.vn>
2024-04-10 07:23:49 +00:00
Sinh fd41b1eadf feat(onpoint): update payload 2024-04-09 12:07:51 +07:00
Sinh 9004771704 feat(warehouse): add warehouse method get list config 2024-04-08 15:40:13 +07:00
Sinh 524db8391f Merge branch 'master' of git.selly.red:Selly-Modules/natsio into onpoint-stock-update 2024-04-08 14:26:45 +07:00
sinhluu 546c45aad4 Merge pull request 'onpoint' (#165) from onpoint into master
Reviewed-on: #165
2024-04-08 07:26:30 +00:00
Sinh 3a5046f65d feat(nats): add warehouse method get list warehouse config 2024-04-08 14:25:18 +07:00
Sinh c6284f3200 feat(product): add queue OP stock update 2024-04-08 11:40:10 +07:00
Nguyen Minh 02b699f144 feature/update-location-ward 2024-03-15 14:44:15 +07:00
Sinh a409c0d17c onpoint 2023-11-29 14:10:08 +07:00
sinhluu 5edec97ee3 Merge pull request 'kiotviet' (#161) from kiotviet into master
Reviewed-on: #161
2023-10-20 09:08:41 +00:00
Sinh 430e07b7d0 add webhook model 2023-10-12 15:43:49 +07:00
Sinh 7302b78f25 add subject webhook product update 2023-10-12 09:14:53 +07:00
Sinh e84157281b add func bulk write warehouse config 2023-10-10 16:33:58 +07:00
Sinh 28178e0c31 add func update warehouse config 2023-10-10 16:11:19 +07:00
Sinh b3bde5cd09 update communication model 2023-10-06 16:39:40 +07:00
kingphon 2ba590a0a0 Merge branch 'feature/selly-mall-v1-kin' 2023-09-22 15:50:25 +07:00
kingphon a62eeb60d2 fix 2023-09-22 15:50:06 +07:00
kingphon 31a13546bb Revert "add-migration"
This reverts commit f58dfd4291.
2023-09-22 15:47:55 +07:00
kingphon b240d7a9d1 Merge pull request 'add-migration' (#159) from feature/selly-mall-v1-kin into master
Reviewed-on: #159
2023-09-22 07:47:36 +00:00
kingphon f58dfd4291 add-migration 2023-09-22 14:47:16 +07:00
kingphon ba8af50460 Merge pull request 'add-field-mall' (#158) from feature/selly-mall-v1-kin into master
Reviewed-on: #158
2023-09-22 04:26:06 +00:00
kingphon 8dd914ca4e add-field-mall 2023-09-22 11:15:56 +07:00
trunglam 10aec9f710 Merge pull request '[Update] warehouse response' (#156) from fundiin into master
Reviewed-on: #156
2023-05-10 07:00:58 +00:00
trunglt251292 1c7e947344 [Update] warehouse response 2023-05-10 14:00:08 +07:00
sinhluu 898ee7822f Merge pull request 'order-warning' (#155) from order-warning into master
Reviewed-on: #155
2023-04-14 02:37:55 +00:00
sinhluu 1ca2e5720e Merge pull request 'update warehouse config' (#154) from order/notify-on-new-order-for-warehouse into master
Reviewed-on: #154
2023-04-11 02:52:36 +00:00
Sinh 202dca2c28 update warehouse config 2023-04-05 16:00:36 +07:00
Sinh 1579e563ac update nats order response 2023-03-31 14:56:34 +07:00
Sinh a432e7fd44 update socket client 2023-03-27 15:44:39 +07:00
Sinh 041dd43616 update order client 2023-03-27 15:10:21 +07:00
Minh Nguyen aaf8de9830 Merge pull request 'saving campaign' (#153) from feature/saving-campaign-bk into master
Reviewed-on: #153
2023-03-24 07:25:45 +00:00
Nguyen Minh 9c2f55e434 fix conflict 2023-03-24 14:19:33 +07:00
Nguyen Minh 8ed19af4ea change struct socket reward payload 2023-03-23 14:31:06 +07:00
Nguyen Minh 985a86dbd7 model 2023-03-23 10:46:10 +07:00
Nguyen Minh afd6b215d6 reqrep socket 2023-03-23 10:34:58 +07:00
Minh Nguyen d6f50295c7 Merge pull request 'feauture-subject-subscriber-topic' (#150) from feauture-subject-subscriber-topic into master
Reviewed-on: #150
2023-03-20 04:07:04 +00:00
sinhluu 983731715b Merge pull request 'notify change price product' (#149) from product/notify-change-price into master
Reviewed-on: #149
2023-03-14 08:02:54 +00:00
Sinh d03758a32d Merge master 2023-03-14 15:02:32 +07:00
Nguyen Minh 71d674b74c update 2023-03-14 11:47:16 +07:00
Nguyen Minh 41b79b4ae8 jet stream generate voucher promotion 2023-03-14 11:34:38 +07:00
sinhluu 53b2215309 Merge pull request 'product request multi step' (#146) from product/update-request-multi-step into master
Reviewed-on: #146
2023-03-14 03:53:10 +00:00
Nguyen Minh ffe9418671 rerun 2023-03-02 14:15:15 +07:00
Nguyen Minh 7b01640583 update js model 2023-03-02 11:44:13 +07:00
Sinh 2e069b94e7 product request multi step 2023-03-01 14:40:34 +07:00
Sinh aee7b01b40 notify change price product 2023-03-01 10:42:54 +07:00
tuannt20 2f64f1fa37 update 2023-02-28 18:04:14 +07:00
tuannt20 a1d6840fd9 add field get list seller by ids 2023-02-28 17:14:49 +07:00
Nguyen Minh 0401a57930 add model subject subscriber topic 2023-02-28 15:14:49 +07:00
Nguyen Minh 79ad5c401c subject-subscriber-topic 2023-02-28 15:06:06 +07:00
trunglam e64ba040b0 Merge pull request 'init' (#139) from location-by-ward-code into master
Reviewed-on: #139
2023-02-06 02:29:03 +00:00
quang dba7cf4691 init 2023-02-03 17:20:44 +07:00
sinhluu 0269010ce8 Merge pull request 'supplier-setup-product' (#138) from supplier-setup-product into master
Reviewed-on: #138
2023-02-03 07:53:48 +00:00
Sinh 4c328c0858 Merge branch 'master' of git.selly.red:Selly-Modules/natsio into supplier-setup-product 2023-01-31 16:21:24 +07:00
trunglam 6626bc8588 Merge pull request 'fix-holiday-product' (#137) from fix-holiday-product into master
Reviewed-on: #137
2023-01-31 03:31:48 +00:00
anbuiselly f4f15ea224 Merge branch 'master' of git.selly.red:Selly-Modules/natsio into fix-holiday-product 2023-01-18 14:29:13 +07:00
trunglam f43a99628e Merge pull request 'location' (#135) from refactor-location-1701 into master
Reviewed-on: #135
2023-01-18 02:27:48 +00:00
trunglt251292 5a47acc373 change name 2023-01-17 17:22:28 +07:00
quang f32844916a location 2023-01-17 16:29:47 +07:00
anbuiselly 49156e576d fix 2023-01-17 14:23:24 +07:00
anbuiselly 292c7733f0 edit struct update_status_warehouse_pending_inactive 2023-01-17 14:15:27 +07:00
anbuiselly 9a30faa3a2 edit update update_pending_in_active_product_by_warehouse_ids 2023-01-17 11:35:38 +07:00
anbuiselly f9b2edb032 update_pending_active_product_by_warehouse_ids 2023-01-17 11:20:27 +07:00
Minh Nguyen cf88c46708 Merge pull request 'feature-campaign-get-seller-statistic' (#127) from feature-campaign-get-seller-statistic into master
Reviewed-on: #127
2023-01-12 03:44:46 +00:00
Nguyen Minh 2003cb4e49 update 2023-01-11 10:21:02 +07:00
Nguyen Minh 67b99f7774 campaign-get-seller-statistic 2023-01-11 09:27:49 +07:00
Sinh df1fbbcf57 Merge branch 'master' into supplier-setup-product 2023-01-10 16:55:55 +07:00
truongvo 74277cc390 Merge pull request 'setup-holiday-supplier-tool' (#123) from setup-holiday-supplier-tool into master
Reviewed-on: #123
2023-01-10 08:03:36 +00:00
anbuiselly 39614ca4c5 add get-detail-supplier-info 2023-01-10 11:27:36 +07:00
Sinh 1edc683dd5 add subject process product req 2023-01-09 15:56:46 +07:00
buiphuan0211 9b758ee785 fix 2022-12-29 14:10:44 +07:00
buiphuan0211 64c7fca2cc rename subj 2022-12-29 13:58:16 +07:00
buiphuan0211 4fd0a89acd edit check token supplier user 2022-12-29 13:49:04 +07:00
Sinh e7888e2c4c Merge branch 'master' of git.selly.red:Selly-Modules/natsio into supplier-setup-product 2022-12-29 10:02:35 +07:00
buiphuan0211 ec9dedad0d change res check-token-supllier 2022-12-27 23:49:25 +07:00
buiphuan0211 7f548f0931 fix 2022-12-27 16:37:48 +07:00
buiphuan0211 71be64db27 edit requestPayload check token supplier 2022-12-27 16:16:08 +07:00
Sinh 252c82f1e4 add client queue 2022-12-26 15:16:46 +07:00
Sinh e66596baf6 define nats queue 2022-12-26 15:12:48 +07:00
Sinh b19fea04c8 define nats product 2022-12-26 14:08:14 +07:00
buiphuan0211 54f5c45488 edit response checkTokenSupplier 2022-12-24 13:50:58 +07:00
buiphuan0211 b5d7425114 add field permission checkTokenSupplier 2022-12-23 15:13:35 +07:00
buiphuan0211 daac1da25d delete suppler-holiday && add checkTokenSupplier 2022-12-23 14:47:09 +07:00
buiphuan0211 5ec216067d add field supplier-holiday 2022-12-23 11:36:33 +07:00
buiphuan0211 e00922334c fix add file source supplierHolidayPayloadCreate 2022-12-23 11:23:31 +07:00
buiphuan0211 067db84489 add get,create, update supplier-holiday 2022-12-23 03:32:15 +07:00
sinhluu 1f4edb64ab Merge pull request 'setup-holiday-warehouse-admin' (#110) from setup-holiday-warehouse-admin into master
Reviewed-on: #110
2022-12-21 09:07:50 +00:00
buiphuan0211 77ec5ee6c1 delete field form-to-holiday in WarehouseNatsResponse 2022-12-20 11:48:36 +07:00
buiphuan0211 ea80206619 add field from-to holiday WarehouseNatsResponse 2022-12-20 11:13:11 +07:00
anbuiselly 67a5afa933 add field IsPendingInactive 2022-12-14 10:52:38 +07:00
anbuiselly c1a5444e5e edit res warehouse 2022-12-12 14:25:40 +07:00
anbuiselly aa3a201b18 edit response warehouse 2022-12-12 14:07:28 +07:00
Sinh 46539db236 update get warehouse condition 2022-12-09 10:05:41 +07:00
trunglam b39948c635 Merge pull request 'export-data-affiliate-transaction' (#103) from export-data-affiliate-transaction into master
Reviewed-on: #103
2022-12-07 06:53:36 +00:00
anbuiselly 23eebdce8a change code 2022-12-07 13:48:43 +07:00
Minh Nguyen fa80e0d707 Merge pull request 'add response' (#102) from feature/add-response-data-export-update into master
Reviewed-on: #102
2022-12-05 10:25:33 +00:00
tuannt20 99894963e6 add response 2022-12-05 12:04:43 +07:00
anbuiselly 0d69cc3357 change model get transaction 2022-12-04 21:25:42 +07:00
anbuiselly 5b7d8329ae update model gettransaction 2022-12-04 21:05:25 +07:00
anbuiselly d7c2660ae2 edit getTransactionRequest 2022-12-04 21:01:43 +07:00
anbuiselly 599d36120e edit getTransactionRequest 2022-12-04 20:57:25 +07:00
anbuiselly 7c05aa7011 get list affiliate-transaction 2022-12-04 20:43:54 +07:00
Minh Nguyen 24f0e88472 Merge pull request 'feature/campaign-completed' (#94) from feature/campaign-completed into master
Reviewed-on: #94
2022-12-02 06:58:08 +00:00
Nguyen Minh 4d766bbcea fix conflict 2022-12-02 13:57:40 +07:00
tuannt20 9cec9d8c2f update field 2022-12-02 10:15:58 +07:00
tuanngo 64079b6cad Merge pull request 'add response' (#91) from feature/export-data-campaign-transaction into feature/campaign-completed
Reviewed-on: #91
2022-11-29 06:56:21 +00:00
tuannt20 aff5a872e3 add response 2022-11-29 13:54:39 +07:00
sinhluu 1d722f31a5 Merge pull request 'admin-push-notification-supplier' (#90) from admin-push-notification-supplier into master
Reviewed-on: #90
2022-11-28 03:32:05 +00:00
Sinh 25890d58bc merge branch master into 'admin-push-notification-supplier 2022-11-28 10:31:05 +07:00
tuanngo 8a30a03810 Merge pull request 'add response' (#88) from feature/export-data-campaign-transaction into feature/campaign-completed
Reviewed-on: #88
2022-11-24 08:59:53 +00:00
tuannt20 83e9aef3c9 add response 2022-11-24 15:44:25 +07:00
Minh Nguyen 1fe67e7356 Merge pull request 'fix response' (#86) from feature/export-data-campaign-transaction into feature/campaign-completed
Reviewed-on: #86
2022-11-24 07:45:59 +00:00
Nguyen Minh 6d6fe6acd2 Merge branch 'feature/campaign-completed' of git.selly.red:Selly-Modules/natsio into feature/campaign-completed 2022-11-24 14:16:06 +07:00
Nguyen Minh 8858688f0f update options 2022-11-24 14:15:53 +07:00
tuannt20 af807784ec fix response 2022-11-24 11:14:15 +07:00
Minh Nguyen b7f3c061c8 Merge pull request 'add GetCampaign' (#83) from feature/export-data-campaign-transaction into feature/campaign-completed
Reviewed-on: #83
2022-11-24 03:07:49 +00:00
tuannt20 2f278526a9 add GetCampaign 2022-11-24 09:49:41 +07:00
Minh Nguyen 436a713725 Merge pull request 'add nasts campaign transaction' (#81) from feature/export-data-campaign-transaction into feature/campaign-completed
Reviewed-on: #81
2022-11-24 02:41:01 +00:00
Sinh fb87ac7911 update nats 2022-11-24 09:38:10 +07:00
tuannt20 e3e498ed23 add nasts campaign transaction 2022-11-24 09:06:48 +07:00
Minh Nguyen 45dc489c4c Merge pull request 'fix' (#79) from feature/social-post into master
Reviewed-on: #79
2022-11-23 10:01:27 +00:00
Nguyen Minh dbf8ad502f fix 2022-11-23 16:54:31 +07:00
phuanbui 8266f7f5ff Merge pull request 'add nats' (#77) from notification-amin into admin-push-notification-supplier
Reviewed-on: #77
2022-11-23 03:30:51 +00:00
anbuiselly c47768308c add nats 2022-11-23 10:29:50 +07:00
Sinh 8248069bb8 count supplier 2022-11-23 10:08:52 +07:00
Minh Nguyen c704f10cda Merge pull request 'feature/campaign' (#76) from feature/campaign into master
Reviewed-on: #76
2022-11-22 08:39:56 +00:00
Minh Nguyen 5a2a7fbbe0 Merge pull request 'add nats staff' (#71) from feature/add-source-response-update-quantity into feature/campaign
Reviewed-on: #71
2022-11-22 03:26:24 +00:00
tuannt20 0dd3dce224 add nats staff 2022-11-22 10:04:40 +07:00
Nguyen Minh 549aee36d0 update notification opts 2022-11-18 14:52:05 +07:00
Sinh d45da3e74c nats - get supplier from old server 2022-11-18 10:13:41 +07:00
Minh Nguyen 828d4e34ba Merge pull request 'rename' (#61) from feature/get-detail-social-post into feature/campaign
Reviewed-on: #61
2022-11-17 02:32:48 +00:00
tuannt20 b8f10912c1 rename 2022-11-17 09:27:45 +07:00
Minh Nguyen cf9f8f2c63 Merge pull request 'fix' (#59) from feature/get-detail-social-post into feature/campaign
Reviewed-on: #59
2022-11-16 10:34:53 +00:00
tuannt20 26f8b64258 fix 2022-11-16 17:33:29 +07:00
Minh Nguyen cfa306d0fc Merge pull request 'nats model campaign admin' (#57) from feature/get-detail-social-post into feature/campaign
Reviewed-on: #57
2022-11-16 10:23:33 +00:00
tuannt20 6e21f72ac0 fix name func 2022-11-16 17:21:37 +07:00
tuannt20 7a213f4b4d nats model campaign admin 2022-11-16 16:43:17 +07:00
Nguyen Minh 18f4444156 fix 2022-11-14 15:11:04 +07:00
Nguyen Minh 598c886aa6 nats model campaign 2022-11-14 14:45:26 +07:00
sinhluu 75bed82def Merge pull request 'integrate-onpoint' (#55) from integrate-onpoint into master
Reviewed-on: #55
2022-11-02 09:13:30 +00:00
Sinh 4d8a64364f Merge branch 'master' of git.selly.red:Selly-Modules/natsio into integrate-onpoint 2022-11-02 09:39:52 +07:00
Sinh c007a41a06 fix subject update OR delivery 2022-11-02 09:38:52 +07:00
sinhluu df352f8bd5 Merge pull request 'integrate-onpoint' (#54) from integrate-onpoint into master
Reviewed-on: #54
2022-10-31 09:33:37 +00:00
tuenguyen fe20f69b9d Merge pull request 'build authsms' (#53) from build-auth-sms into master
Reviewed-on: #53
2022-10-28 02:32:10 +00:00
Tue e324b88fe6 build authsms 2022-10-28 09:31:39 +07:00
Tue caaf630b5e Merge branch 'build-auth-sms' of git.selly.red:Selly-Modules/natsio 2022-10-27 09:18:32 +07:00
69 changed files with 1801 additions and 367 deletions

36
client/affiliate.go Normal file
View File

@ -0,0 +1,36 @@
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
}

View File

@ -17,15 +17,14 @@ func GetBank() Bank {
return Bank{}
}
// GetBankInfo ...
func (s Bank) GetBankInfo(p []model.GetBankInfoRequest) ([]*model.ResponseBankInfo, error) {
msg, err := natsio.GetServer().Request(subject.Bank.GetBankInfo, toBytes(p))
func (s Bank) GetBankById(bankID string) (*model.BankBrief, error) {
msg, err := natsio.GetServer().Request(subject.Bank.GetBankById, toBytes(bankID))
if err != nil {
return nil, err
}
var r struct {
Data []*model.ResponseBankInfo `json:"data"`
Data *model.BankBrief `json:"data"`
Error string `json:"error"`
}
@ -39,7 +38,7 @@ func (s Bank) GetBankInfo(p []model.GetBankInfoRequest) ([]*model.ResponseBankIn
return r.Data, nil
}
func (s Bank) CheckBankAndBranchByID(p model.CheckBankAndBranchByIDRequest) bool {
func (s Bank) CheckBankAndBranchByID(p model.BankBranchRequest) bool {
msg, err := natsio.GetServer().Request(subject.Bank.CheckBankAndBranchByID, toBytes(p))
if err != nil {
return false

39
client/bank_branch.go Normal file
View File

@ -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"
)
// 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
}

58
client/campaign.go Normal file
View File

@ -0,0 +1,58 @@
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
}

View File

@ -19,7 +19,28 @@ func GetLocation() Location {
// GetLocationByCode ...
func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*model.ResponseLocationAddress, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetLocationByCode, toBytes(payload))
msg, err := natsio.GetServer().Request(subject.Location.GetLocationByCodeFromLocationService, 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 {
return nil, err
}
@ -40,7 +61,7 @@ func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*mode
// GetProvincesByCodes ...
func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.LocationProvinceResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetProvincesByCodes, toBytes(p))
msg, err := natsio.GetServer().Request(subject.Location.GetProvincesByCodesFromLocationService, toBytes(p))
if err != nil {
return nil, err
}
@ -62,7 +83,7 @@ func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.Lo
// GetDistrictsByCodes ...
func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.LocationDistrictResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCodes, toBytes(p))
msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCodesFromLocationService, toBytes(p))
if err != nil {
return nil, err
}
@ -84,7 +105,7 @@ func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.Lo
// GetWardsByCodes ...
func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWardResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCodes, toBytes(p))
msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCodesFromLocationService, toBytes(p))
if err != nil {
return nil, err
}

View File

@ -119,3 +119,22 @@ func (o Order) GetSupplierOrders(p model.OrderSupplierQuery) (*model.SupplierOrd
}
return &r.Data, nil
}
// GetUserTotalWarningOrder ...
func (o Order) GetUserTotalWarningOrder(p model.OrderGetTotalWarningPayload) (*model.OrderGetTotalWarningRes, error) {
msg, err := natsio.GetServer().Request(subject.Order.GetUserTotalWarningOrders, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data model.OrderGetTotalWarningRes `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
}

86
client/product.go Normal file
View File

@ -0,0 +1,86 @@
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
}

35
client/queue.go Normal file
View File

@ -0,0 +1,35 @@
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"
)
// Queue ...
type Queue struct{}
// GetQueue ...
func GetQueue() Queue {
return Queue{}
}
func (c Queue) ScheduleTask(p model.QueueScheduleTaskRequest) error {
msg, err := natsio.GetServer().Request(subject.Queue.ScheduleTask, 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
}

41
client/segmnet.go Normal file
View File

@ -0,0 +1,41 @@
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"
)
// Segment ...
type Segment struct{}
// GetSegment ...
func GetSegment() Segment {
return Segment{}
}
// GetListSegmentInfoByIds ...
func (s Segment) GetListSegmentInfoByIds(p model.GetListSegmentRequest) (*model.ResponseListSegmentInfo, error) {
msg, err := natsio.GetServer().Request(subject.Segment.GetListSegmentInfo, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSegmentInfo `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
}

65
client/social_post.go Normal file
View File

@ -0,0 +1,65 @@
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"
)
// SocialPost ...
type SocialPost struct{}
// GetSocialPost ...
func GetSocialPost() SocialPost {
return SocialPost{}
}
// GetListSocialPostAppInfoByIDs ...
func (s SocialPost) GetListSocialPostAppInfoByIDs(p model.GetListSocialPostAppByIDsRequest) (*model.ResponseListSocialPostAppInfo, error) {
msg, err := natsio.GetServer().Request(subject.SocialPost.GetListSocialPostAppInfoByIDs, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSocialPostAppInfo `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
}
// GetBriefDetailSocialPostAdminByIDsRequest ...
func (s SocialPost) GetBriefDetailSocialPostAdminByIDsRequest(p model.GetBriefInfoSocialPostAdminByIDsRequest) (*model.ResponseListSocialPostAdminInfo, error) {
msg, err := natsio.GetServer().Request(subject.SocialPost.GetBriefInfoSocialPostAdminByIDs, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSocialPostAdminInfo `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
}

27
client/socket.go Normal file
View File

@ -0,0 +1,27 @@
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
}

41
client/staff.go Normal file
View File

@ -0,0 +1,41 @@
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"
)
// Staff ...
type Staff struct{}
func GetStaff() Staff {
return Staff{}
}
// GetListStaffInfoByIds ...
func (s Staff) GetListStaffInfoByIds(p model.GetListStaffRequest) (*model.ResponseListStaffInfo, error) {
msg, err := natsio.GetServer().Request(subject.Staff.GetListStaffInfo, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListStaffInfo `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
}

View File

@ -3,7 +3,6 @@ package client
import (
"encoding/json"
"errors"
"go.mongodb.org/mongo-driver/bson"
"git.selly.red/Selly-Modules/natsio"
"git.selly.red/Selly-Modules/natsio/model"
@ -39,6 +38,28 @@ func (s Supplier) GetListSupplierInfo(p model.GetSupplierRequest) ([]*model.Resp
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) {
msg, err := natsio.GetServer().Request(subject.Supplier.GetSupplierContractBySupplierID, toBytes(p))
if err != nil {
@ -81,6 +102,69 @@ func (s Supplier) FindAll(supplierID model.SupplierRequestPayload) (*model.Suppl
return r.Data, nil
}
func (s Supplier) FindAllOld(req model.SupplierFindAllReq) (*model.SupplierAll, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.FindAllOld, toBytes(req))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierAll `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) GetBankInfoByID(supplierID model.SupplierRequestPayload) (*model.SupplierAll, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.FindAll, toBytes(supplierID))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierAll `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) Count(req model.SupplierCountReq) (*model.SupplierCountRes, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.Count, toBytes(req))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierCountRes `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
}
// CreateWarehouseIntoServiceSupplier ...
func (s Supplier) CreateWarehouseIntoServiceSupplier(p model.CreateSupplierWarehousePayload) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.CreateWarehouseIntoServiceSupplier, toBytes(p))
@ -116,63 +200,3 @@ func (s Supplier) UpdateWarehouseIntoServiceSupplier(p model.UpdateSupplierWareh
}
return nil
}
// GetListWarehouseFreeShip ...
func (s Supplier) GetListWarehouseFreeShip() (*model.SupplierListWarehouseFreeShipResponse, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.GetListWarehouseFreeShip, toBytes(bson.M{}))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierListWarehouseFreeShipResponse `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
}
// GetFreeShipInfo ...
func (s Supplier) GetFreeShipInfo(p model.SupplierFreeShipInfoRequestPayload) ([]*model.SupplierFreeShipInfoResponse, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.GetFreeShipInfo, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []*model.SupplierFreeShipInfoResponse `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
}
// CreateCashflow ...
func (s Supplier) CreateCashflow(p model.SupplierCashflowCreatePayload) (*model.SupplierCashflowCreateResponse, error) {
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
}

58
client/supplier_role.go Normal file
View File

@ -0,0 +1,58 @@
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"
)
// SupplierRole ...
type SupplierRole struct{}
// GetSupplierRole ...
func GetSupplierRole() SupplierRole {
return SupplierRole{}
}
func (s SupplierRole) CreateRole(p model.CreateRoleRequest) (*model.CreateRoleResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.CreateRoleResponse `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) UpdateRole(p model.UpdateRoleRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierRole.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
}

View File

@ -16,14 +16,14 @@ func GetSupplierUser() SupplierUser {
return SupplierUser{}
}
func (s SupplierUser) CreateSupplierOwnerUsers(p model.CreateSupplierOwnerUserRequest) (*model.CreateSupplierUserOwnerResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateSupplierOwnerUser, toBytes(p))
func (s SupplierUser) CreateSupplierOwnerUsers(p model.CreateOwnerRequest) (*model.CreateOwnerResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.CreateSupplierUserOwnerResponse `json:"data"`
Data *model.CreateOwnerResponse `json:"data"`
Error string `json:"error"`
}
@ -37,8 +37,8 @@ func (s SupplierUser) CreateSupplierOwnerUsers(p model.CreateSupplierOwnerUserRe
return r.Data, nil
}
func (s SupplierUser) UpdateSupplierOwnerUsers(p model.UpdateSupplierOwnerUserRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateSupplierOwnerUser, toBytes(p))
func (s SupplierUser) UpdateSupplierOwnerUsers(p model.UpdateOwnerRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateOwner, toBytes(p))
if err != nil {
return err
}
@ -57,14 +57,14 @@ func (s SupplierUser) UpdateSupplierOwnerUsers(p model.UpdateSupplierOwnerUserRe
return nil
}
func (s SupplierUser) CreateSupplierStaffUsers(p model.CreateSupplierStaffUserRequest) (*model.CreateSupplierUserStaffResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateSupplierStaffUser, toBytes(p))
func (s SupplierUser) CreateSupplierStaffUsers(p model.CreateStaffRequest) (*model.CreateStaffResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateStaff, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.CreateSupplierUserStaffResponse `json:"data"`
Data *model.CreateStaffResponse `json:"data"`
Error string `json:"error"`
}
@ -78,8 +78,8 @@ func (s SupplierUser) CreateSupplierStaffUsers(p model.CreateSupplierStaffUserRe
return r.Data, nil
}
func (s SupplierUser) UpdateSupplierStaffUsers(p model.CreateSupplierStaffUserRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateSupplierStaffUser, toBytes(p))
func (s SupplierUser) UpdateSupplierStaffUsers(p model.UpdateStaffRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateStaff, toBytes(p))
if err != nil {
return err
}
@ -97,3 +97,64 @@ func (s SupplierUser) UpdateSupplierStaffUsers(p model.CreateSupplierStaffUserRe
return nil
}
func (s SupplierUser) UpdateStatus(p model.UpdateStatusRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateStaff, 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) ResetPassword(p model.ResetPasswordRequest) (*model.ResetPasswordResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.ResetPassword, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResetPasswordResponse `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
}
// CheckTokenSupplierUser ...
func (s SupplierUser) CheckTokenSupplierUser(p model.CheckTokenSupplierUserPayload) (*model.ResponseCheckTokenSupplierUser, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CheckTokenSupplierUser, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Error string `json:"error"`
Data *model.ResponseCheckTokenSupplierUser `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
}

View File

@ -146,6 +146,25 @@ func (w Warehouse) GetConfigByWarehouseID(warehouseID string) (*model.WarehouseC
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 ...
func (w Warehouse) GetWarehouses(p model.GetWarehousesRequest) (*model.GetWarehousesResponse, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.GetWarehouses, toBytes(p))
@ -167,7 +186,7 @@ func (w Warehouse) GetWarehouses(p model.GetWarehousesRequest) (*model.GetWareho
// UpdateORDeliveryStatus ...
func (w Warehouse) UpdateORDeliveryStatus(p model.WarehouseORUpdateDeliveryStatus) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.GetWarehouses, toBytes(p))
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateORDeliveryStatus, toBytes(p))
if err != nil {
return err
}
@ -182,3 +201,43 @@ func (w Warehouse) UpdateORDeliveryStatus(p model.WarehouseORUpdateDeliveryStatu
}
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
}

View File

@ -3,6 +3,7 @@ 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"
@ -83,3 +84,39 @@ func (w Warehouse) FindByCondition(p model.FindWithCondition) ([]*model.Warehous
}
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
}

View File

@ -5,8 +5,14 @@ var Selly = struct {
PushNotification string
UpdateSellerAffiliateStatistic string
CheckAnDInsertCashflowBySeller string
SubscriberTopic string
UpdateSellerSavingCampaignStatistic string
GenerateVoucherPromotion string
}{
PushNotification: "PULL_PUSH_NOTIFICATION",
UpdateSellerAffiliateStatistic: "PULL_UPDATE_SELLER_AFFILIATE_STATISTIC",
CheckAnDInsertCashflowBySeller: "PULL_CHECK_AND_INSERT_CASHFLOW_BY_SELLER",
SubscriberTopic: "PULL_SUBSCRIBER_TOPIC",
UpdateSellerSavingCampaignStatistic: "PULL_UPDATE_SELLER_SAVING_CAMPAIGN_STATISTIC",
GenerateVoucherPromotion: "PULL_GENERATE_VOUCHER_PROMOTION",
}

View File

@ -1,5 +1,7 @@
package jsmodel
import "go.mongodb.org/mongo-driver/bson/primitive"
// PushNotification ...
type PushNotification struct {
User string `json:"user"`
@ -14,6 +16,9 @@ type PushNotification struct {
type NotificationOptions struct {
Title string `json:"title"`
Content string `json:"content"`
CampaignID string `json:"campaignId,omitempty"`
SellerSavingCampaignID string `json:"sellerSavingCampaignId,omitempty"`
SellerSavingCampaignStatus string `json:"sellerSavingCampaignStatus,omitempty"`
}
// PayloadUpdateSellerAffiliateStatistic ...
@ -57,4 +62,49 @@ 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"`
}
// 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"`
}

View File

@ -14,8 +14,14 @@ var Selly = struct {
PushNotification string
UpdateSellerAffiliateStatistic string
CheckAnDInsertCashflowBySeller string
SubscriberTopic string
UpdateSellerSavingCampaignStatistic string
GenerateVoucherPromotion string
}{
PushNotification: getSellyValue("push_notifications"),
UpdateSellerAffiliateStatistic: getSellyValue("update_seller_affiliate_statistic"),
CheckAnDInsertCashflowBySeller: getSellyValue("check_and_insert_cashflow_statistic"),
SubscriberTopic: getSellyValue("subscriber_topic"),
UpdateSellerSavingCampaignStatistic: getSellyValue("update_seller_saving_campaign_statistic"),
GenerateVoucherPromotion: getSellyValue("generate_voucher_promotion"),
}

View File

@ -0,0 +1,16 @@
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"`
}

View File

@ -0,0 +1,38 @@
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"`
}

View File

@ -0,0 +1,11 @@
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"`
}

View File

@ -0,0 +1,6 @@
package model
type BankBranchRequest struct {
BankID string `json:"bankId"`
BranchID string `json:"branchId"`
}

View File

@ -1,11 +0,0 @@
package model
type CheckBankAndBranchByIDRequest struct {
BankID string `json:"bankId"`
BranchID string `json:"branchId"`
}
type GetBankInfoRequest struct {
BankID string `json:"bankId"`
BranchID string `json:"branchId"`
}

View File

@ -1,23 +1,11 @@
package model
import "time"
// MultiLang ...
type MultiLang struct {
En string `json:"en"`
Vi string `json:"vi"`
}
// BankBranchBrief ...
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 ...
type BankBrief struct {
ID string `json:"_id"`
@ -27,14 +15,7 @@ type BankBrief struct {
BenBankName string `json:"benBankName"`
BankCode int `json:"bankCode"`
IsBranchRequired bool `json:"isBranchRequired"`
SearchString string `json:"searchString"`
BeneficiaryForVietinbank string `json:"beneficiaryForVietinbank"`
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"`
}

22
model/campaign_request.go Normal file
View File

@ -0,0 +1,22 @@
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
}

View File

@ -0,0 +1,88 @@
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"`
}

View File

@ -21,12 +21,6 @@ type ActionBy struct {
Name string `json:"name"`
}
// ClickAction ...
type ClickAction struct {
Type string `json:"type"`
Value string `json:"value"`
}
// RequestCondition ...
type RequestCondition struct {
Code int `json:"code"`
@ -35,10 +29,28 @@ type RequestCondition struct {
ProvinceCode int `json:"provinceCode"`
Slug string `json:"slug"`
OldSlug string `json:"oldSlug"`
Slugs []string `json:"slugs"`
OldSlugs []string `json:"oldSlugs"`
DistrictSlug string `json:"districtSlug"`
ProvinceSlug string `json:"provinceSlug"`
Keyword string `json:"keyword"`
Region string `json:"region"`
Page int64 `json:"page"`
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
}

View File

@ -5,6 +5,9 @@ type CommunicationRequestHttp struct {
ResponseImmediately bool `json:"responseImmediately"`
Authentication string `json:"authentication"`
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 ...

56
model/file_response.go Normal file
View File

@ -0,0 +1,56 @@
package model
import "go.mongodb.org/mongo-driver/bson/primitive"
// FilePhoto ...
type FilePhoto struct {
ID string `json:"_id"`
Name string `json:"name,omitempty"`
Dimensions *FileDimensions `json:"dimensions"`
}
// FileSize ...
type FileSize struct {
Width int `json:"width"`
Height int `json:"height"`
URL string `json:"url"`
}
// FileDimensions ...
type FileDimensions struct {
Small *FileSize `json:"sm"`
Medium *FileSize `json:"md"`
}
// ListPhoto ...
type ListPhoto []*FilePhoto
// Video ...
type Video struct {
ID primitive.ObjectID `json:"_id"`
Name string `json:"name"`
Dimensions *FileVideoDimensions `json:"dimensions"`
VideoExtension string `json:"ext"`
Thumbnail *FilePhoto `json:"thumbnail"`
Status string `json:"status"`
}
// FileVideoDimensions ...
type FileVideoDimensions struct {
Dimension480p *FileVideoSize `json:"size480p"`
Dimension720p *FileVideoSize `json:"size720p"`
Dimension1080p *FileVideoSize `json:"size1080p"`
DimensionOriginal *FileVideoSize `json:"original"`
}
// FileVideoSize ...
type FileVideoSize struct {
Name string `json:"name"`
Width int `json:"width"`
Height int `json:"height"`
Size string `json:"size"`
URL string `json:"url"`
}
// ListVideo ...
type ListVideo []Video

View File

@ -2,6 +2,7 @@ package model
// LocationRequestPayload ...
type (
// LocationRequestPayload ...
LocationRequestPayload struct {
Province int `json:"province"`
District int `json:"district"`

View File

@ -1,7 +1,5 @@
package model
import "time"
type (
// ResponseLocationAddress ...
ResponseLocationAddress struct {
@ -15,6 +13,7 @@ type (
ID string `json:"id"`
Name string `json:"name"`
Code int `json:"code"`
Slug string `json:"slug"`
RegionCode string `json:"regionCode"`
MainRegionCode string `json:"mainRegionCode"`
}
@ -24,6 +23,7 @@ type (
ID string `json:"id"`
Name string `json:"name"`
Code int `json:"code"`
Slug string `json:"slug"`
}
// LocationWard ...
@ -31,6 +31,14 @@ type (
ID string `json:"id"`
Name string `json:"name"`
Code int `json:"code"`
Slug string `json:"slug"`
Location *GEOLocation `json:"location"`
}
// GEOLocation ...
GEOLocation struct {
Type string `bson:"type" json:"type"`
Coordinates []float64 `bson:"coordinates" json:"coordinates"`
}
// LocationProvinceResponse ...
@ -52,45 +60,36 @@ type (
LocationProvinceDetailResponse struct {
ID string `json:"_id"`
Name string `json:"name"`
SearchString string `json:"searchString"`
Slug string `json:"slug"`
OldSlug string `json:"oldSlug"`
Code int `json:"code"`
CountryCode string `json:"countryCode"`
RegionCode string `json:"regionCode"`
MainRegionCode string `json:"mainRegionCode"`
TotalDistricts int `json:"totalDistricts"`
TotalWards int `json:"totalWards"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
}
// LocationDistrictDetailResponse ...
LocationDistrictDetailResponse struct {
ID string `json:"_id"`
Name string `json:"name"`
SearchString string `json:"searchString"`
OldSlugs []string `json:"oldSlugs"`
Slug string `json:"slug"`
OldSlug string `json:"oldSlug"`
Code int `json:"code"`
ProvinceCode int `json:"provinceCode"`
Area int `json:"area"`
TotalWards int `json:"totalWards"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
}
// LocationWardDetailResponse ...
LocationWardDetailResponse struct {
ID string `json:"_id"`
Name string `json:"name"`
SearchString string `json:"searchString"`
Slug string `json:"slug"`
OldSlugs []string `json:"oldSlugs"`
Slug string `json:"slug"`
Code int `json:"code"`
DistrictCode int `json:"districtCode"`
ProvinceCode int `json:"provinceCode"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
Location *GEOLocation `json:"location"`
}
)

View File

@ -49,3 +49,7 @@ type OrderSupplierQuery struct {
SupplierID string `json:"supplierId"`
WarehouseIDs []string `json:"warehouseIDs"`
}
type OrderGetTotalWarningPayload struct {
UserID string `json:"userId"`
}

View File

@ -33,3 +33,10 @@ type SupplierOrderDelivery struct {
Status string `json:"status" enums:"waiting_to_confirm,waiting_to_pick,picking,picked,delay_pickup,pickup_failed,delivering,delay_delivery,delivered,cancelled,delivery_failed,waiting_to_return,returning,delay_return,compensation,returned"`
TPLCode string `json:"tplCode" enums:"SLY,GHTK,GHN,SSC,SPY,VTP,SE,NTL,BEST"`
}
// OrderGetTotalWarningRes ...
type OrderGetTotalWarningRes struct {
UserID string `json:"userId"`
TotalWarningOrder int64 `json:"totalWarningOrder"`
Action ActionType `json:"action"`
}

14
model/product_request.go Normal file
View File

@ -0,0 +1,14 @@
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"`
}

8
model/queue_request.go Normal file
View File

@ -0,0 +1,8 @@
package model
type QueueScheduleTaskRequest struct {
ID string `json:"id"`
NatsSubject string `json:"natsSubject"`
Data string `json:"data"`
StartAt int64 `json:"startAt"` // unix
}

6
model/segment_request.go Normal file
View File

@ -0,0 +1,6 @@
package model
// GetListSegmentRequest ...
type GetListSegmentRequest struct {
SegmentIds []string `json:"segmentIds"`
}

12
model/segment_response.go Normal file
View File

@ -0,0 +1,12 @@
package model
// ResponseSegmentInfo ...
type ResponseSegmentInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
}
// ResponseListSegmentInfo ...
type ResponseListSegmentInfo struct {
Segments []ResponseSegmentInfo `json:"segments"`
}

View File

@ -7,6 +7,8 @@ type ResponseSellerInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
Code string `json:"code"`
IsAccountPro bool `json:"isAccountPro"`
CashRemaining float64 `json:"cashRemaining"`
}
// ResponseListSellerInfo ...

View File

@ -0,0 +1,13 @@
package model
import "go.mongodb.org/mongo-driver/bson/primitive"
// GetListSocialPostAppByIDsRequest ...
type GetListSocialPostAppByIDsRequest struct {
SocialPostIDs []primitive.ObjectID `json:"socialPostIDs"`
}
// GetBriefInfoSocialPostAdminByIDsRequest ...
type GetBriefInfoSocialPostAdminByIDsRequest struct {
SocialPostIDs []primitive.ObjectID `json:"socialPostIDs"`
}

View File

@ -0,0 +1,61 @@
package model
import (
"go.mongodb.org/mongo-driver/bson/primitive"
"time"
)
// ResponseListSocialPostAppInfo ...
type ResponseListSocialPostAppInfo struct {
SocialPosts []SocialPostAppInfo `json:"socialPosts"`
}
// SocialPostAppInfo ...
type SocialPostAppInfo struct {
ID primitive.ObjectID `json:"_id"`
Title string `json:"title"`
Content string `json:"content"`
Statistic SocialPostStatistic `json:"statistic"`
Author *SocialPostSellerInfo `json:"author"`
Photos ListPhoto `json:"photos"`
PublishedAt time.Time `json:"publishedAt"`
IsLiked bool `json:"isLiked"`
IsPin bool `json:"isPin"`
Contributor *SocialPostSellerInfo `json:"contributor"`
CreatedAt time.Time `json:"createdAt"`
Status string `json:"status"`
HasUpdate bool `json:"hasUpdate"`
Order int `json:"order"`
Videos ListVideo `json:"videos"`
}
// SocialPostStatistic ...
type SocialPostStatistic struct {
Views int `json:"views"`
UniqueViews int `json:"uniqueViews"`
Likes int `json:"likes"`
Shares int `json:"shares"`
UniqueShares int `json:"uniqueShares"`
Comments int `json:"comments"`
}
// SocialPostSellerInfo ...
type SocialPostSellerInfo struct {
ID primitive.ObjectID `json:"_id"`
Name string `json:"name"`
Membership SellerMembershipInfo `json:"membership"`
Logo *FilePhoto `json:"avatar"`
IsMine bool `json:"isMine"`
}
// ResponseListSocialPostAdminInfo ...
type ResponseListSocialPostAdminInfo struct {
SocialPosts []SocialPostAdminInfo `json:"socialPosts"`
}
// SocialPostAdminInfo ...
type SocialPostAdminInfo struct {
ID primitive.ObjectID `json:"_id"`
Title string `json:"title"`
Status string `json:"status"`
}

19
model/socket.go Normal file
View File

@ -0,0 +1,19 @@
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"`
}

6
model/staff_request.go Normal file
View File

@ -0,0 +1,6 @@
package model
// GetListStaffRequest ...
type GetListStaffRequest struct {
StaffIds []string `json:"staffIds"`
}

12
model/staff_response.go Normal file
View File

@ -0,0 +1,12 @@
package model
// ResponseListStaffInfo ...
type ResponseListStaffInfo struct {
Staffs []ResponseStaffInfo `json:"staffs"`
}
// ResponseStaffInfo ...
type ResponseStaffInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
}

View File

@ -9,6 +9,11 @@ type GetSupplierRequest struct {
ListID []primitive.ObjectID `json:"listID"`
}
// GetDetailSupplierRequest ...
type GetDetailSupplierRequest struct {
Supplier string `json:"supplier"`
}
type GetSupplierContractRequest struct {
SupplierID primitive.ObjectID `json:"supplierID"`
}
@ -39,16 +44,16 @@ type UpdateSupplierWarehousePayload struct {
WardCode int `json:"wardCode"`
}
// SupplierCashflowCreatePayload ...
type SupplierCashflowCreatePayload struct {
Supplier string `json:"supplier"`
Action string `json:"action"`
Name string `json:"name"`
TargetID string `json:"targetId"`
Value float64 `json:"value"`
ClickAction *ClickAction `json:"clickAction"`
type SupplierFindAllReq struct {
Page int64 `json:"page"`
Limit int64 `json:"limit"`
Segment string `json:"segment"`
IDs []string `json:"ids"`
Status string `json:"status"` // active,inactive
}
type SupplierFreeShipInfoRequestPayload struct {
SupplierIDs []string `json:"supplierIds"`
type SupplierCountReq struct {
Segment string `json:"segment"`
IDs []string `json:"ids"`
Status string `json:"status"` // active,inactive
}

View File

@ -5,6 +5,7 @@ type ResponseSupplierInfo struct {
ID string `json:"id"`
Name string `json:"name"`
BusinessType string `json:"businessType"`
IsSellyMall bool `json:"isSellyMall"`
}
// ResponseSupplierContract ...
@ -30,22 +31,6 @@ type SupplierAll struct {
Total int64 `json:"total"`
}
type SupplierListWarehouseFreeShipResponse struct {
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 SupplierCountRes struct {
Total int64 `json:"total"`
}

View File

@ -0,0 +1,14 @@
package model
type CreateRoleRequest struct {
Name string `json:"name"`
Code string `json:"code"`
Type string `json:"type"`
}
type UpdateRoleRequest struct {
ID string `json:"_id"`
Name string `json:"name"`
Code string `json:"code"`
Type string `json:"type"`
}

View File

@ -0,0 +1,5 @@
package model
type CreateRoleResponse struct {
ID string `json:"_id"`
}

View File

@ -1,6 +1,6 @@
package model
type CreateSupplierOwnerUserRequest struct {
type CreateOwnerRequest struct {
Name string `json:"name"`
Phone string `json:"phone"`
Email string `json:"email"`
@ -9,7 +9,7 @@ type CreateSupplierOwnerUserRequest struct {
Password string `json:"password"`
}
type UpdateSupplierOwnerUserRequest struct {
type UpdateOwnerRequest struct {
ID string `json:"_id"`
SupplierID string `json:"supplierId"`
Name string `json:"name"`
@ -18,7 +18,7 @@ type UpdateSupplierOwnerUserRequest struct {
RoleID string `json:"roleId"`
}
type CreateSupplierStaffUserRequest struct {
type CreateStaffRequest struct {
Name string `json:"name"`
Phone string `json:"phone"`
Email string `json:"email"`
@ -28,14 +28,30 @@ type CreateSupplierStaffUserRequest struct {
Warehouses []string `json:"warehouses"`
}
type UpdateSupplierStaffUserRequest struct {
type UpdateStaffRequest struct {
ID string `json:"_id"`
Name string `json:"name"`
Phone string `json:"phone"`
Email string `json:"email"`
SupplierID string `json:"supplierId"`
Role string `json:"role"`
RoleID string `json:"roleId"`
Password string `json:"password"`
SupplierUserWarehouseID string `json:"supplierUserWarehouseId"`
Warehouses []string `json:"warehouses"`
RoleId string `json:"roleId"`
}
type UpdateStatusRequest struct {
ID string `json:"_id"`
Status string `json:"status"`
}
type ResetPasswordRequest struct {
ID string `json:"_id"`
Password string `json:"password"`
}
// CheckTokenSupplierUserPayload ...
type CheckTokenSupplierUserPayload struct {
Token string `json:"token"`
Permissions []string `json:"permissions"`
}

View File

@ -1,13 +1,26 @@
package model
type CreateSupplierUserOwnerResponse struct {
type CreateOwnerResponse struct {
ID string `json:"_id"`
}
type CreateSupplierUserStaffResponse struct {
type CreateStaffResponse struct {
ID string `json:"_id"`
}
type GetListPermissionResponse struct {
Permission []string `json:"permission"`
type ResetPasswordResponse struct {
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"`
}

View File

@ -42,6 +42,7 @@ type OutboundRequestItem struct {
UnitCode string `json:"unitCode"`
Price float64 `json:"price"`
Name string `json:"name"`
PartnerProductCode string `json:"partnerProductCode"`
}
// CustomerInfo ...
@ -63,11 +64,12 @@ type AddressDetail struct {
// UpdateOutboundRequestLogisticInfoPayload ...
type UpdateOutboundRequestLogisticInfoPayload struct {
ShippingLabel string `json:"shippingLabel"`
TrackingCode string `json:"trackingCode"`
ORCode string `json:"orCode"`
TPLCode string `json:"tplCode"`
ShippingLabel string `json:"shippingLabel,omitempty"`
TrackingCode string `json:"trackingCode,omitempty"`
ORCode string `json:"orCode,omitempty"`
TPLCode string `json:"tplCode,omitempty"`
OrderID string `json:"orderId"`
DeliveryStatus string `json:"deliveryStatus,omitempty"`
}
// CancelOutboundRequest ...
@ -101,6 +103,7 @@ type GetWarehousesRequest struct {
Status string `json:"status"`
Supplier string `json:"supplier"`
BusinessType string `json:"businessType"`
IDs []string `json:"ids"`
Page int64 `json:"page"`
Limit int64 `json:"limit"`
@ -113,3 +116,24 @@ type WarehouseORUpdateDeliveryStatus struct {
OrderID string `json:"orderId"`
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"`
}

View File

@ -65,12 +65,24 @@ type WarehouseOrder struct {
PaymentMethod WarehousePaymentMethod `json:"paymentMethod"`
IsLimitNumberOfPurchases bool `json:"isLimitNumberOfPurchases"`
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 ...
type WarehousePaymentMethod struct {
Cod bool `json:"cod"`
BankTransfer bool `json:"bankTransfer"`
Fundiin bool `json:"fundiin"`
}
// WarehouseDelivery ...
@ -142,6 +154,10 @@ type WarehouseNatsResponse struct {
Configurations WarehouseConfiguration `json:"configurations"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
ReasonPendingInactive string `json:"reasonPendingInactive"`
IsPendingInactive bool `json:"isPendingInactive"`
IsFromInternational bool `json:"isFromInternational"`
StoreCode string `json:"storeCode"`
}
// WarehouseInfo ...
@ -170,3 +186,9 @@ type GetWarehousesResponse struct {
Limit int64 `json:"limit"`
List []WarehouseInfo `json:"list"`
}
type GetListWarehouseConfigRes struct {
Total int64 `json:"total"`
Limit int64 `json:"limit"`
List []WarehouseConfiguration `json:"list"`
}

13
subject/affiliate.go Normal file
View File

@ -0,0 +1,13 @@
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"),
}

View File

@ -7,9 +7,11 @@ func getBankValue(val string) string {
}
var Bank = struct {
GetBankInfo string
GetBankById string
GetBankBranchById string
CheckBankAndBranchByID string
}{
GetBankInfo: getBankValue("get_bank_info"),
CheckBankAndBranchByID: getBankValue("check_bank_and_branch_by_id"),
GetBankById: getBankValue("get_bank_by_id"),
GetBankBranchById: getBankValue("get_bank_branch_by_id"),
CheckBankAndBranchByID: getBankValue("check_bank_and_brach_by_id"),
}

17
subject/campaign.go Normal file
View File

@ -0,0 +1,17 @@
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"),
}

View File

@ -9,9 +9,16 @@ var prefixes = struct {
Bank string
Supplier string
Seller string
AuthSMS string
Selly string
SupplierUser string
SupplierRole string
SocialPost string
Staff string
Segment string
Product string
Queue string
Campaign string
Affiliate string
Socket string
}{
Communication: "communication",
Order: "order",
@ -21,7 +28,14 @@ var prefixes = struct {
Supplier: "supplier",
Bank: "bank",
Seller: "seller",
AuthSMS: "auth_sms",
Selly: "selly",
SupplierUser: "supplier_user",
SupplierRole: "supplier_role",
SocialPost: "social_post",
Staff: "staff",
Segment: "segment",
Product: "product",
Queue: "queue",
Campaign: "campaign",
Affiliate: "affiliate",
Socket: "socket",
}

View File

@ -8,9 +8,14 @@ func getLocationValue(val string) string {
var Location = struct {
GetLocationByCode string
GetLocationByCodeFromLocationService string
GetLocationByWardCode string
GetProvincesByCodes string
GetProvincesByCodesFromLocationService string
GetDistrictsByCodes string
GetDistrictsByCodesFromLocationService string
GetWardsByCodes string
GetWardsByCodesFromLocationService string
GetProvinceByCondition string
GetProvincesByCondition string
GetDistrictByCondition string
@ -23,9 +28,14 @@ var Location = struct {
ProvinceDistinctWithField string
}{
GetLocationByCode: getLocationValue("get_location_warehouse"),
GetLocationByCodeFromLocationService: getLocationValue("get_location_warehouse_from_location_service"),
GetLocationByWardCode: getLocationValue("get_location_by_ward_code"),
GetProvincesByCodes: getLocationValue("get_provinces_by_codes"),
GetProvincesByCodesFromLocationService: getLocationValue("get_provinces_by_codes_from_location_service"),
GetDistrictsByCodes: getLocationValue("get_districts_by_codes"),
GetDistrictsByCodesFromLocationService: getLocationValue("get_districts_by_codes_from_location_service"),
GetWardsByCodes: getLocationValue("get_wards_by_codes"),
GetWardsByCodesFromLocationService: getLocationValue("get_wards_by_codes_from_location_service"),
GetProvinceByCondition: getLocationValue("get_province_by_condition"),
GetProvincesByCondition: getLocationValue("get_provinces_by_condition"),
GetDistrictByCondition: getLocationValue("get_district_by_condition"),

View File

@ -8,6 +8,7 @@ func getOrderValue(val string) string {
var Order = struct {
UpdateORStatus string
GetUserTotalWarningOrders string
CancelDelivery string
ChangeDeliveryStatus string
UpdateLogisticInfoFailed string
@ -15,6 +16,7 @@ var Order = struct {
GetSupplierOrders string
}{
UpdateORStatus: getOrderValue("update_outbound_request_status"),
GetUserTotalWarningOrders: getOrderValue("get_user_total_warning_orders"),
CancelDelivery: getOrderValue("cancel_delivery"),
ChangeDeliveryStatus: getOrderValue("change_delivery_status"),
UpdateLogisticInfoFailed: getOrderValue("update_logistic_info_failed"),

26
subject/product.go Normal file
View File

@ -0,0 +1,26 @@
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"),
}

13
subject/queue.go Normal file
View File

@ -0,0 +1,13 @@
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"),
}

15
subject/segment.go Normal file
View File

@ -0,0 +1,15 @@
package subject
import "fmt"
// getSegmentValue ...
func getSegmentValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Segment, val)
}
// Segment ...
var Segment = struct {
GetListSegmentInfo string
}{
GetListSegmentInfo: getSegmentValue("get_list_segment_info"),
}

17
subject/social_post.go Normal file
View File

@ -0,0 +1,17 @@
package subject
import "fmt"
// getSocialPostValue ...
func getSocialPostValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.SocialPost, val)
}
// SocialPost ...
var SocialPost = struct {
GetListSocialPostAppInfoByIDs string
GetBriefInfoSocialPostAdminByIDs string
}{
GetListSocialPostAppInfoByIDs: getSocialPostValue("get_list_social_post_app_info_by_ids"),
GetBriefInfoSocialPostAdminByIDs: getSocialPostValue("get_brief_info_social_post_admin_by_ids"),
}

16
subject/socket.go Normal file
View File

@ -0,0 +1,16 @@
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",
}

14
subject/staff.go Normal file
View File

@ -0,0 +1,14 @@
package subject
import "fmt"
func getStaffValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Staff, val)
}
// Staff ...
var Staff = struct {
GetListStaffInfo string
}{
GetListStaffInfo: getStaffValue("get_list_staff_info"),
}

View File

@ -8,16 +8,16 @@ func getSupplierValue(val string) string {
var Supplier = struct {
GetListSupplierInfo string
GetDetailSupplierInfo string
GetSupplierContractBySupplierID string
FindAll string
GetListWarehouseFreeShip string
CreateCashflow string
GetFreeShipInfo string
FindAllOld string
Count string
}{
GetListSupplierInfo: getSupplierValue("get_list_supplier_info"),
GetDetailSupplierInfo: getSupplierValue("get_detail_supplier_info"),
GetSupplierContractBySupplierID: getSupplierValue("get_supplier_contract_by_supplier_id"),
FindAll: getSupplierValue("find_all"),
GetListWarehouseFreeShip: getSupplierValue("get_list_warehouse_free_ship"),
CreateCashflow: getSupplierValue("create_cashflow"),
GetFreeShipInfo: getSupplierValue("get_free_ship_info"),
FindAllOld: getSupplierValue("find_all_old"),
Count: getSupplierValue("count"),
}

15
subject/supplier_role.go Normal file
View File

@ -0,0 +1,15 @@
package subject
import "fmt"
func getRoleValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.SupplierRole, val)
}
var SupplierRole = struct {
Create string
Update string
}{
Create: getRoleValue("create"),
Update: getRoleValue("update"),
}

View File

@ -2,18 +2,26 @@ package subject
import "fmt"
func getAuthSMSValue(val string) string {
func getSupplierUserValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.SupplierUser, val)
}
var SupplierUser = struct {
CreateSupplierOwnerUser string
UpdateSupplierOwnerUser string
CreateSupplierStaffUser string
UpdateSupplierStaffUser string
// Users
CreateOwner string
UpdateOwner string
CreateStaff string
UpdateStaff string
UpdateStatus string
ResetPassword string
CheckTokenSupplierUser string
}{
CreateSupplierOwnerUser: getAuthSMSValue("create_supplier_owner_user"),
UpdateSupplierOwnerUser: getAuthSMSValue("update_supplier_owner_user"),
CreateSupplierStaffUser: getAuthSMSValue("create_supplier_staff_user"),
UpdateSupplierStaffUser: getAuthSMSValue("update_supplier_staff_user"),
// Users
CreateOwner: getSupplierUserValue("create_owner"),
UpdateOwner: getSupplierUserValue("update_owner"),
CreateStaff: getSupplierUserValue("create_staff"),
UpdateStaff: getSupplierUserValue("update_staff"),
UpdateStatus: getSupplierUserValue("update_status"),
ResetPassword: getSupplierUserValue("reset_password"),
CheckTokenSupplierUser: getSupplierUserValue("check_token_supplier_user"),
}

View File

@ -1,6 +1,8 @@
package subject
import "fmt"
import (
"fmt"
)
func getWarehouseValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Warehouse, val)
@ -17,6 +19,7 @@ var Warehouse = struct {
WebhookTNC string
WebhookGlobalCare string
WebhookOnPoint string
WebhookViettelFFM string
FindOne string
FindByCondition string
Distinct string
@ -26,6 +29,11 @@ var Warehouse = struct {
UpdateIsClosedSupplier string
GetWarehouses string
UpdateORDeliveryStatus string
UpdateStatusWarehousePendingInactive string
UpdateIsSellyMall string
UpdateWarehouseConfig string
BulkWriteWarehouseConfig string
GetListWarehouseConfig string
}{
CreateWarehouseIntoServiceSupplier: getWarehouseValue("create_warehouse_into_service_supplier"),
UpdateWarehouseIntoServiceSupplier: getWarehouseValue("update_warehouse_into_service_supplier"),
@ -39,6 +47,7 @@ var Warehouse = struct {
WebhookTNC: getWarehouseValue("webhook_tnc"),
WebhookGlobalCare: getWarehouseValue("webhook_global_care"),
WebhookOnPoint: getWarehouseValue("webhook_on_point"),
WebhookViettelFFM: getWarehouseValue("webhook_viettel_ffm"),
FindOne: getWarehouseValue("find_one"),
FindByCondition: getWarehouseValue("find_all_by_condition"),
Distinct: getWarehouseValue("distinct"),
@ -46,4 +55,9 @@ var Warehouse = struct {
UpdateIsClosedSupplier: getWarehouseValue("update_is_closed_supplier"),
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"),
}