mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Merged utils.PrimaryCdrFields and utils.NotExtraCDRFields in utils.MainCDRFields
This commit is contained in:
committed by
Dan Christian Bogos
parent
1d9c1f03e9
commit
44e2effbf0
@@ -57,7 +57,7 @@ type AttrGetTPResourceIds struct {
|
||||
|
||||
// Queries Resource identities on specific tariff plan.
|
||||
func (self *ApierV1) GetTPResourceIDs(attrs *AttrGetTPResourceIds, reply *[]string) error {
|
||||
if missing := utils.MissingStructFields(&attrs, []string{"TPid"}); len(missing) != 0 { //Params missing
|
||||
if missing := utils.MissingStructFields(attrs, []string{"TPid"}); len(missing) != 0 { //Params missing
|
||||
return utils.NewErrMandatoryIeMissing(missing...)
|
||||
}
|
||||
if ids, err := self.StorDb.GetTpTableIds(attrs.TPid, utils.TBLTPResources, utils.TPDistinctIds{"id"}, nil, &attrs.Paginator); err != nil {
|
||||
|
||||
@@ -19,9 +19,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
package engine
|
||||
|
||||
import (
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
)
|
||||
|
||||
func NewCgrCdrFromHttpReq(req *http.Request, timezone string) (CgrCdr, error) {
|
||||
@@ -51,7 +52,7 @@ func (cgrCdr CgrCdr) getCGRID(timezone string) string {
|
||||
func (cgrCdr CgrCdr) getExtraFields() map[string]string {
|
||||
extraFields := make(map[string]string)
|
||||
for k, v := range cgrCdr {
|
||||
if !utils.IsSliceMember(utils.PrimaryCdrFields, k) {
|
||||
if _, has := utils.MainCDRFieldsMap[k]; !has {
|
||||
extraFields[k] = v
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,8 +159,8 @@ func (me MapEvent) AsMapStringIgnoreErrors(ignoredFlds utils.StringMap) (mp map[
|
||||
func (me MapEvent) AsCDR(cfg *config.CGRConfig, tnt, tmz string) (cdr *CDR, err error) {
|
||||
cdr = &CDR{Tenant: tnt, Cost: -1.0, ExtraFields: make(map[string]string)}
|
||||
for k, v := range me {
|
||||
if !utils.IsSliceMember(utils.NotExtraCDRFields, k) { // not primary field, populate extra ones
|
||||
utils.Logger.Debug(fmt.Sprintf("field <%s> as extra since is not present in %s", k, utils.ToJSON(utils.NotExtraCDRFields)))
|
||||
if _, has := utils.MainCDRFieldsMap[k]; !has { // not primary field, populate extra ones
|
||||
utils.Logger.Debug(fmt.Sprintf("field <%s> as extra since is not present in %s", k, utils.ToJSON(utils.MainCDRFields)))
|
||||
if cdr.ExtraFields[k], err = utils.IfaceAsString(v); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -317,7 +317,7 @@ func (self *SMGSession) AsActiveSession(timezone string) *ActiveSession {
|
||||
SetupTime: self.EventStart.GetTimeIgnoreErrors(utils.SetupTime, self.Timezone),
|
||||
AnswerTime: self.EventStart.GetTimeIgnoreErrors(utils.AnswerTime, self.Timezone),
|
||||
Usage: self.TotalUsage,
|
||||
ExtraFields: self.EventStart.AsMapStringIgnoreErrors(utils.NewStringMap(utils.PrimaryCdrFields...)),
|
||||
ExtraFields: self.EventStart.AsMapStringIgnoreErrors(utils.MainCDRFieldsMap),
|
||||
SMId: "CGR-DA",
|
||||
}
|
||||
if self.CD != nil {
|
||||
|
||||
@@ -594,7 +594,7 @@ func (smg *SMGeneric) v2ForkSessions(tnt string, evStart *engine.SafEvent,
|
||||
Destination: evStart.GetStringIgnoreErrors(utils.Destination),
|
||||
TimeStart: startTime,
|
||||
TimeEnd: startTime.Add(evStart.GetDurationIgnoreErrors(utils.Usage)),
|
||||
ExtraFields: evStart.AsMapStringIgnoreErrors(utils.NewStringMap(utils.PrimaryCdrFields...)),
|
||||
ExtraFields: evStart.AsMapStringIgnoreErrors(utils.MainCDRFieldsMap),
|
||||
}
|
||||
ss = append(ss,
|
||||
&SMGSession{CGRID: cgrID, Tenant: tnt,
|
||||
|
||||
@@ -21,12 +21,11 @@ package utils
|
||||
var (
|
||||
CDRExportFormats = []string{DRYRUN, MetaFileCSV, MetaFileFWV, MetaHTTPjsonCDR, MetaHTTPjsonMap,
|
||||
MetaHTTPjson, META_HTTP_POST, MetaAMQPjsonCDR, MetaAMQPjsonMap}
|
||||
PrimaryCdrFields = []string{CGRID, Source, OriginHost, OriginID, ToR, RequestType, Tenant, Category,
|
||||
Account, Subject, Destination, SetupTime, AnswerTime, Usage,
|
||||
COST, RATED, Partial, RunID}
|
||||
NotExtraCDRFields = []string{CGRID, Source, OriginHost, OriginID, ToR, RequestType, Tenant, Category,
|
||||
Account, Subject, Destination, SetupTime, AnswerTime, Usage,
|
||||
COST, RATED, Partial, RunID, PreRated, CostSource}
|
||||
MainCDRFields = []string{CGRID, Source, OriginHost, OriginID, ToR, RequestType, Tenant, Category,
|
||||
Account, Subject, Destination, SetupTime, AnswerTime, Usage, COST, RATED, Partial, RunID,
|
||||
PreRated, CostSource}
|
||||
MainCDRFieldsMap StringMap
|
||||
|
||||
GitLastLog string // If set, it will be processed as part of versioning
|
||||
PosterTransportContentTypes = map[string]string{
|
||||
MetaHTTPjsonCDR: CONTENT_JSON,
|
||||
@@ -980,4 +979,5 @@ func buildCacheIndexesToPrefix() {
|
||||
func init() {
|
||||
buildCacheInstRevPrefixes()
|
||||
buildCacheIndexesToPrefix()
|
||||
MainCDRFieldsMap = NewStringMap(MainCDRFields...)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user