public JToken GetListSuiteRegistration(string auctionCalenderId, string clientId, string logId)
        {
            var suiteWrapper = new SuiteWrapper();

            suitesessionId = suiteWrapper.Login().GetAwaiter().GetResult();

            var request = new SuiteReadEntryListRequest();

            request.SessionId  = suitesessionId;
            request.ModuleName = "reg_Registration";
            request.Query      = "reg_Registration_cstm.ac1_auction_calendar_id_c='" + auctionCalenderId + "'";
            //request.Query = $"reg_Registration_cstm.ac1_auction_calendar_id_c='{auctionCalenderId}' and id in ( SELECT contacts_reg_registration_1reg_registration_idb  FROM contacts_reg_registration_1_c  where contacts_reg_registration_1contacts_ida = '{clientId}') ";
            request.SelectFields = new List <string> {
                "id",
            };

            var registration_list = suiteWrapper.GetList(request).GetAwaiter().GetResult();

            foreach (var registratonRecord in registration_list.EntityList)
            {
                if (CheckForRegistrationAvailalibilityForContact(registratonRecord.SelectToken("id").ToString(), clientId, logId) > 0)
                {
                    return(registratonRecord);
                }
            }
            return(null);
        }
Example #2
0
        public List <EntryListArray> GetSuiteContactIDByEmail(string email, string logId)
        {
            var wrapper = new SuiteWrapper();

            suitesessionId = wrapper.Login().GetAwaiter().GetResult();

            var request = new SuiteReadEntryListRequest();

            request.SessionId  = suitesessionId;
            request.ModuleName = "Contacts";
            request.Query      = " contacts" +
                                 ".id in (SELECT eabr.bean_id FROM email_addr_bean_rel eabr JOIN email_addresses ea ON " +
                                 "(ea.id = eabr.email_address_id) WHERE eabr.deleted=0 AND ea.email_address = '" + email + "')";
            request.SelectFields = new List <string> {
                "Am_customer_id",
                "email"
            };
            try
            {
                var suiteConstactList = wrapper.GetList(request).GetAwaiter().GetResult();
                return(suiteConstactList.EntryList);
            }

            catch (Exception ex)
            {
                SuiteWrapper.WriteTraceLog("GetRegistration", "Error : " + ex.Message);
                InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
                {
                    Description = "Error : " + ex.Message, Name = "GetSuiteConstactIDByEmail", Entity_c = "Customer"
                }, logId);
            }
            return(null);
        }
        public GetListofSuiteContactResponse GetListSuiteContact(GetListofSuiteContactRequest GetSuiteContactRequest)
        {
            var suiteWrapper = new SuiteWrapper();

            suitesessionId = suiteWrapper.Login().GetAwaiter().GetResult();

            var request = new SuiteReadEntryListRequest();

            request.SessionId    = suitesessionId;
            request.ModuleName   = "Contacts";
            request.SelectFields = new List <string> {
                "first_name",
                "last_name",
                "phone_work",
                "title",
                "phone_fax",
                "description",
            };

            var contacts_List = suiteWrapper.GetList(request).GetAwaiter().GetResult();

            for (var i = 0; i <= contacts_List.EntityList.Count(); i++)
            {
                var values = new Dictionary <string, string>
                {
                    { "method", "POST" },
                    { "input_type", "JSON" },
                    { "response_type", "JSON" },
                    { "email_address", "*****@*****.**" },
                    { "given_name", "ABC" },
                    { "family_name", "Xyz" },
                    { "password", "1234567890" },
                    { "first_name", contacts_List.EntryList[i].Entity.SelectToken("first_name").ToString() },
                    { "last_name", contacts_List.EntryList[i].Entity.SelectToken("last_name").ToString() },
                    { "phone_work", contacts_List.EntryList[i].Entity.SelectToken("phone_work").ToString() },
                    { "title", contacts_List.EntryList[i].Entity.SelectToken("title").ToString() },
                    { "phone_fax", contacts_List.EntryList[i].Entity.SelectToken("phone_fax").ToString() },
                    { "description", contacts_List.EntryList[i].Entity.SelectToken("description").ToString() }
                };
            }

            return(null);
        }
Example #4
0
        // Get NetSuite Customer internalID
        public SuiteContact GetSuiteConstactID(string auctionCustmoerID, string logId)
        {
            var suiteContact   = new SuiteContact();
            var amwrapper      = new AMWrapper();
            var suiteWrapper   = new SuiteWrapper();
            var contactrequest = new CreateContactRequest();

            suitesessionId = suiteWrapper.Login().GetAwaiter().GetResult();

            var request = new SuiteReadEntryListRequest();

            request.SessionId    = suitesessionId;
            request.ModuleName   = "Contacts";
            request.Query        = " am_customer_id_c = '" + auctionCustmoerID + "'";
            request.SelectFields = new List <string> {
                "id",
                "am_customer_id_c",
                "name",
                "client_number_c"
            };
            try
            {
                var suiteConstactlist = suiteWrapper.GetList(request).GetAwaiter().GetResult();

                foreach (var record in suiteConstactlist.EntryList)
                {
                    suiteContact.Id              = record.Entity.SelectToken("id").ToString();
                    suiteContact.Name            = record.Entity.SelectToken("name").ToString();
                    suiteContact.Client_number_c = record.Entity.SelectToken("client_number_c").ToString();
                    return(suiteContact);
                }
            }

            catch (Exception ex)
            {
                InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
                {
                    Description = "Error : " + ex.Message, Name = "CheckForRegistration", Entity_c = "Customer"
                }, logId);
                SuiteWrapper.WriteTraceLog("CheckForRegistration", "Error Message : " + ex.Message);
            }
            return(null);
        }
        public EntryListArray GetListSuiteAuctionCalender(string id, string logId)
        {
            var amWrapper      = new AMWrapper();
            var suiteWrapper   = new SuiteWrapper();
            var contactrequest = new CreateContactRequest();

            suitesessionId = suiteWrapper.Login().GetAwaiter().GetResult();

            var request = new SuiteReadEntryListRequest();

            request.SessionId    = suitesessionId;
            request.ModuleName   = "AC1_Auction_Calendar";
            request.Query        = "AC1_Auction_Calendar.id='" + id + "'";
            request.SelectFields = new List <string> {
                "name",
            };

            var auction_List = suiteWrapper.GetList(request).GetAwaiter().GetResult();

            if (auction_List.EntityList == null)
            {
                return(null);
            }

            var auction_List_Cnt = auction_List.EntityList.Count();

            common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
            {
                Description = "Total Auction Calender in Suite: " + auction_List_Cnt, Name = "GetListSuiteAuctionCalender", Entity_c = "Registration"
            }, logId);
            if (auction_List.EntityList.Count() == 0)
            {
                return(null);
            }
            for (var i = 0; i <= auction_List_Cnt; i++)
            {
                return(auction_List.EntryList[i]);
            }
            return(null);
        }
        public PushListofSuiteAuctionResponse PushListofAMAuction(string auctionId, string logId)
        {
            SuiteWrapper.WriteTraceLog("PushAMAuction", "---------------- AUCTION SYNC START ------------------------- ");
            common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
            {
                Description = "Push Auction to AM sync started", Name = "PushAuction", Entity_c = "Auction"
            }, logId);

            var amWrapper    = new AMWrapper();
            var suiteWrapper = new SuiteWrapper();


            var ret = new PushListofSuiteAuctionResponse();

            ret.List = new List <AMCustomer.AMAuction>();
            try
            {
                suitesessionId = suiteWrapper.Login().GetAwaiter().GetResult();

                var requestAuction = new SuiteReadEntryListRequest();
                requestAuction.SessionId    = suitesessionId;
                requestAuction.ModuleName   = "AC1_Auction_Calendar";
                requestAuction.Query        = $"ac1_auction_calendar_cstm.auction_number_c in ('{string.Join("','", auctionId.Split(','))}')";
                requestAuction.SelectFields = new List <string> {
                    "id",
                    "name",
                    "auction_number_c",
                    "auction_type_c",
                    "currency_type_c",
                    "start_date_c",
                    "invoice_description_c",
                    "viewing_c",
                    "city_description_c",
                    "city_c",
                };

                var auction_List = suiteWrapper.GetList(requestAuction).GetAwaiter().GetResult();

                if (auction_List.Count > 0)
                {
                    foreach (var item in auction_List.EntityList.Children())
                    {
                        var itemProperties = item.Children <JProperty>();

                        var values = new Dictionary <string, string>
                        {
                            { "method", "POST" },
                            { "input_type", "JSON" },
                            { "response_type", "JSON" },
                            { "integration_id", itemProperties.FirstOrDefault(xx => xx.Name == "id").Value.ToString() },
                        };

                        if (!string.IsNullOrEmpty(itemProperties.FirstOrDefault(xx => xx.Name == "name").Value.ToString()))
                        {
                            values.Add("title", itemProperties.FirstOrDefault(xx => xx.Name == "name").Value.ToString());
                        }

                        values.Add("auction_code", itemProperties.FirstOrDefault(xx => xx.Name == "auction_number_c").Value.ToString());

                        var auction_type_c = GetAuctionType(itemProperties.FirstOrDefault(xx => xx.Name == "auction_type_c").Value.ToString());
                        values.Add("auction_type", auction_type_c);


                        var currency_type_c = GetCurrencyCode(itemProperties.FirstOrDefault(xx => xx.Name == "currency_type_c").Value.ToString());
                        values.Add("currency_code", currency_type_c);

                        values.Add("location_name", itemProperties.FirstOrDefault(xx => xx.Name == "city_c").Value.ToString());

                        string start_date_c = Convert.ToDateTime(itemProperties.FirstOrDefault(xx => xx.Name == "start_date_c").Value.ToString()).ToString("yyyy-MM-dd'T'HH:mm'Z'");

                        values.Add("time_start", start_date_c);

                        values.Add("description", itemProperties.FirstOrDefault(xx => xx.Name == "invoice_description_c").Value.ToString());

                        values.Add("viewing_information", itemProperties.FirstOrDefault(xx => xx.Name == "viewing_c").Value.ToString());

                        values.Add("location_description", itemProperties.FirstOrDefault(xx => xx.Name == "city_description_c").Value.ToString());

                        var result_Auction = amWrapper.PostDataToAM(values, $"{amWrapper.apiUrl}/v1/auction/").GetAwaiter().GetResult();


                        var    responseData = JObject.Parse(result_Auction).SelectToken("response");
                        string AMId;
                        if (responseData != null)
                        {
                            AMId = responseData.SelectToken("row_id").ToString();
                            SuiteWrapper.WriteTraceLog("PushAMAuction", "Auction Inserted to AM successfully for Id :" + AMId);
                            common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
                            {
                                Description = "Auction Inserted to AM successfully for Id :" + itemProperties.FirstOrDefault(xx => xx.Name == "id").Value.ToString(), Name = "PushAMAuction", Entity_c = "Auction"
                            }, logId);
                            ret.StatusCode = ClsConstant.SuccessCode;
                            ret.Message    = ClsConstant.SuccessMessage;
                        }
                        else
                        {
                            var message = JObject.Parse(result_Auction).SelectToken("error");
                            AMId = "";
                            SuiteWrapper.WriteTraceLog("PushAMAuction", "Error Message : " + message);
                            common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
                            {
                                Description = "Error Message : " + message, Name = "PushAMAuction", Entity_c = "Auction"
                            }, logId);

                            ret.StatusCode = ClsConstant.ServerErrorCode;
                            ret.Message    = ClsConstant.ServerErrorMsg;
                        }

                        AMCustomer.AMAuction result = new AMCustomer.AMAuction();
                        result.SuiteId = itemProperties.FirstOrDefault(xx => xx.Name == "id").Value.ToString();
                        result.Row_id  = AMId;
                        ret.List.Add(result);
                    }
                }
                else
                {
                    common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
                    {
                        Description = "No any Auction exist for period", Name = "PushAMAuction", Entity_c = "Auction"
                    }, logId);
                    SuiteWrapper.WriteTraceLog("PushAMAuction", "No any Auction exist for period");
                }
            }
            catch (Exception ex)
            {
                common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
                {
                    Description = "Error Message : " + ex.Message, Name = "PushAMAuction", Entity_c = "Auction"
                }, logId);
                ret.StatusCode = ClsConstant.ServerErrorCode;
                ret.Message    = ClsConstant.ServerErrorMsg;

                return(ret);
            }
            SuiteWrapper.WriteTraceLog("PushAMAuction", "---------------- AUCTION SYNC END ------------------------- ");
            common.InsertSuiteAmIntegrationLogDetail(new CreateTraceLogRequest()
            {
                Description = "Push Auction to AM sync ended", Name = "PushAMAuction", Entity_c = "Auction"
            }, logId);
            return(ret);
        }