saving campaign #153
			
				
			
		
		
		
	| 
						 | 
				
			
			@ -34,6 +34,23 @@ func (c Product) ApplyRequest(p model.ProductApplyRequestPayload) 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 {
 | 
			
		||||
| 
						 | 
				
			
			@ -50,3 +67,20 @@ func (c Product) ProcessApplyRequest(p model.ProductApplyRequestPayload) 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
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -5,12 +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",
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -100,3 +100,11 @@ type GenerateVoucherPromotion struct {
 | 
			
		|||
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"`
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,12 +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"),
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,3 +3,12 @@ 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"`
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,8 +9,12 @@ func getProductValue(val string) string {
 | 
			
		|||
 | 
			
		||||
var Product = struct {
 | 
			
		||||
	ApplyRequest        string
 | 
			
		||||
	CreateRequestStep   string
 | 
			
		||||
	ProcessApplyRequest string
 | 
			
		||||
	RequestChangeStatus string
 | 
			
		||||
}{
 | 
			
		||||
	ApplyRequest:        getProductValue("apply_request"),
 | 
			
		||||
	CreateRequestStep:   getProductValue("create_request_step"),
 | 
			
		||||
	ProcessApplyRequest: getProductValue("process_apply_request"),
 | 
			
		||||
	RequestChangeStatus: getProductValue("request_change_status"),
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue