Example #1
0
        public static async Task <List <TWP_Accruals> > getAccruals(int siteId, string APIToken, DateTime?asOfDate = null, string category = null)
        {
            List <TWP_Accruals> allAccruals = new List <TWP_Accruals>();
            string pagedURL = $"{TWPApiUtil.Accruals_EndPoint}?pageSize={API_Page_Size}";

            if (asOfDate != null)
            {
                pagedURL += $"&asOfDate={TWPApiUtil.FormatAPIDate(asOfDate.Value)}";
            }

            if (category != null)
            {
                pagedURL += $"&category={category}";
            }

            while (!String.IsNullOrEmpty(pagedURL))
            {
                string apiResponse = await CallTWPAPI(siteId, APIToken, pagedURL, HttpMethod.Get);

                TWP_API_List_Response result = JsonConvert.DeserializeObject <TWP_API_List_Response>(apiResponse);

                allAccruals.AddRange(result.Results.Select(accJson => accJson.ToObject <TWP_Accruals>()));
                pagedURL = result.NextPageLink;
            }

            return(allAccruals);
        }
Example #2
0
        public static async Task <List <TWP_Employee> > ListEmployees(int siteId, string APIToken)
        {
            List <TWP_Employee> AllEmployees = new List <TWP_Employee>();
            string pagedURL = $"{TWPApiUtil.Employees_EndPoint}?pageSize={API_Page_Size}";

            while (!String.IsNullOrEmpty(pagedURL))
            {
                string APIResponse = await CallTWPAPI(siteId, APIToken, pagedURL, HttpMethod.Get);

                TWP_API_List_Response result = JsonConvert.DeserializeObject <TWP_API_List_Response>(APIResponse);

                AllEmployees.AddRange(result.Results.Select(empJson => empJson.ToObject <TWP_Employee>()));
                pagedURL = result.NextPageLink;
            }
            return(AllEmployees);
        }
Example #3
0
        public static async Task <List <TWP_Login> > getLogins(int siteId, string APIToken, string loginName = null)
        {
            List <TWP_Login> AllLogins = new List <TWP_Login>();

            string url = $"{TWPApiUtil.Logins}";

            if (!string.IsNullOrEmpty(loginName))
            {
                url += $"?ids={loginName}";
            }
            string apiResponse = await CallTWPAPI(siteId, APIToken, url, HttpMethod.Get);

            TWP_API_List_Response result = JsonConvert.DeserializeObject <TWP_API_List_Response>(apiResponse);

            AllLogins.AddRange(result.Results.Select(loginJson => loginJson.ToObject <TWP_Login>()));

            return(AllLogins);
        }
Example #4
0
        public static async Task <List <TWP_Group> > getEEGroups(int siteId, string APIToken, string showGroupsBy = "")
        {
            List <TWP_Group> allGroups = new List <TWP_Group>();

            string pagedURL = $"{TWPApiUtil.Employees_Groups_EndPoint}";

            if (!string.IsNullOrEmpty(showGroupsBy))
            {
                pagedURL += $"?showGroupsBy={showGroupsBy}";
            }

            while (!String.IsNullOrEmpty(pagedURL))
            {
                string APIResponse = await CallTWPAPI(siteId, APIToken, pagedURL, HttpMethod.Get);

                TWP_API_List_Response result = JsonConvert.DeserializeObject <TWP_API_List_Response>(APIResponse);

                allGroups.AddRange(result.Results.Select(groupJson => groupJson.ToObject <TWP_Group>()));
                pagedURL = result.NextPageLink;
            }
            return(allGroups);
        }
Example #5
0
        public static async Task <List <TWP_AccrualActivities> > getAccrualActivity(int siteId, string APIToken, DateTime?startDate = null, DateTime?endDate = null, string category = null, List <string> employeeIds = null)
        {
            List <TWP_AccrualActivities> allAccruals = new List <TWP_AccrualActivities>();
            string pagedURL = $"{TWPApiUtil.Accruals_Activity_EndPoint}?pageSize={API_Page_Size}";

            if (startDate != null)
            {
                pagedURL += $"&startDate={TWPApiUtil.FormatAPIDate(startDate.Value)}";
            }

            if (endDate != null)
            {
                pagedURL += $"&endDate={TWPApiUtil.FormatAPIDate(endDate.Value)}";
            }

            if (category != null)
            {
                pagedURL += $"&category={category}";
            }

            if (employeeIds.safeCount() > 0)
            {
                pagedURL += $"ids={String.Join(",", employeeIds)}";
            }

            while (!String.IsNullOrEmpty(pagedURL))
            {
                string apiResponse = await CallTWPAPI(siteId, APIToken, pagedURL, HttpMethod.Get);

                TWP_API_List_Response result = JsonConvert.DeserializeObject <TWP_API_List_Response>(apiResponse);

                allAccruals.AddRange(result.Results.Select(accJson => accJson.ToObject <TWP_AccrualActivities>()));
                pagedURL = result.NextPageLink;
            }

            return(allAccruals);
        }