Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -20,6 +20,7 @@ type sendOrderMarketMailPayload struct {
|
|||||||
DeletedItems []string `json:"deletedItems"`
|
DeletedItems []string `json:"deletedItems"`
|
||||||
UpdatedItems []string `json:"updatedItems"`
|
UpdatedItems []string `json:"updatedItems"`
|
||||||
AddedItems []string `json:"addedItems"`
|
AddedItems []string `json:"addedItems"`
|
||||||
|
ExtraRecipients []string `json:"extraRecipients"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func SendOrderMarketMailHandler(pg *sql.DB, mssql *sql.DB, ml *mailer.GraphMailer) http.HandlerFunc {
|
func SendOrderMarketMailHandler(pg *sql.DB, mssql *sql.DB, ml *mailer.GraphMailer) http.HandlerFunc {
|
||||||
@@ -67,6 +68,7 @@ func SendOrderMarketMailHandler(pg *sql.DB, mssql *sql.DB, ml *mailer.GraphMaile
|
|||||||
http.Error(w, "recipient query error: "+err.Error(), http.StatusInternalServerError)
|
http.Error(w, "recipient query error: "+err.Error(), http.StatusInternalServerError)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
recipients = appendUniqueRecipients(recipients, payload.ExtraRecipients...)
|
||||||
if len(recipients) == 0 {
|
if len(recipients) == 0 {
|
||||||
http.Error(w, "no active email mapping for market", http.StatusBadRequest)
|
http.Error(w, "no active email mapping for market", http.StatusBadRequest)
|
||||||
return
|
return
|
||||||
@@ -242,6 +244,37 @@ ORDER BY email
|
|||||||
return out, nil
|
return out, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func appendUniqueRecipients(base []string, extras ...string) []string {
|
||||||
|
seen := make(map[string]struct{}, len(base)+len(extras))
|
||||||
|
out := make([]string, 0, len(base)+len(extras))
|
||||||
|
|
||||||
|
for _, raw := range base {
|
||||||
|
mail := strings.ToLower(strings.TrimSpace(raw))
|
||||||
|
if mail == "" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if _, ok := seen[mail]; ok {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
seen[mail] = struct{}{}
|
||||||
|
out = append(out, mail)
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, raw := range extras {
|
||||||
|
mail := strings.ToLower(strings.TrimSpace(raw))
|
||||||
|
if mail == "" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if _, ok := seen[mail]; ok {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
seen[mail] = struct{}{}
|
||||||
|
out = append(out, mail)
|
||||||
|
}
|
||||||
|
|
||||||
|
return out
|
||||||
|
}
|
||||||
|
|
||||||
func buildOrderPDFBytesForMail(db *sql.DB, pgDB *sql.DB, orderID string) ([]byte, *OrderHeader, error) {
|
func buildOrderPDFBytesForMail(db *sql.DB, pgDB *sql.DB, orderID string) ([]byte, *OrderHeader, error) {
|
||||||
header, err := getOrderHeaderFromDB(db, orderID)
|
header, err := getOrderHeaderFromDB(db, orderID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -1166,7 +1166,8 @@ async function sendUpdateMailAfterApply (selectedRows) {
|
|||||||
operation: payload.operation,
|
operation: payload.operation,
|
||||||
deletedItems: payload.deletedItems,
|
deletedItems: payload.deletedItems,
|
||||||
updatedItems: payload.updatedItems,
|
updatedItems: payload.updatedItems,
|
||||||
addedItems: payload.addedItems
|
addedItems: payload.addedItems,
|
||||||
|
extraRecipients: ['urun@baggi.com.tr']
|
||||||
})
|
})
|
||||||
|
|
||||||
const sentCount = Number(res?.data?.sentCount || 0)
|
const sentCount = Number(res?.data?.sentCount || 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user