public ActionResult Form941Return(bool?id) { Form941Data form941 = new Form941Data(); bool _prePopulate = id ?? false; if (_prePopulate) { PrePopulate(form941); } return(View(form941)); }
/// <summary> /// Pre Populate date /// </summary> /// <param name="form941"></param> private static void PrePopulate(Form941Data form941) { //Mapping Form 941 form941.Sequence = "Record1"; form941.RecordId = null; //Mapping Return Header form941.ReturnHeader = new Form941ReturnHeader { ReturnType = null, Qtr = "Q1", TaxYr = "2018", Business = new Business { BusinessId = null, BusinessNm = "Test Business", EINorSSN = "003333330", IsEIN = true, BusinessType = "ESTE", ContactNm = "John Doe", Email = "*****@*****.**", Fax = "1234567890", TradeNm = "Kodak", IsBusinessTerminated = false, Phone = "1234566890", PhoneExtn = "12345", IsForeign = false, USAddress = new USAddress { Address1 = "Address Line 1", City = "Rockhill", State = "SC", ZipCd = "29730" }, SigningAuthority = new DotNetCoreSDK.Models.Base.SigningAuthority { BusinessMemberType = "ADMINISTRATOR", Phone = "1234564390", Name = "John" }, KindOfEmployer = null, KindOfPayer = null, ForeignAddress = null, }, BusinessStatusDetails = new BusinessStatusDetails { IsBusinessClosed = false, IsBusinessTransferred = false, IsSeasonalEmployer = false, BusinessClosedDetails = null, BusinessTransferredDetails = null }, IsThirdPartyDesignee = true, ThirdPartyDesignee = new ThirdPartyDesignee { Name = "John Doe", Phone = "1234567890", PIN = "12345" }, SignatureDetails = new SignatureDetails { SignatureType = "REPORTING_AGENT", ReportingAgentPIN = new ReportingAgentPIN { PIN = "12345" } } }; //Mapping Return Data form941.ReturnData = new Form941ReturnData { DepositScheduleType = new DepositScheduleType { DepositorType = DepositorType.MINTAXLIABILITY.ToString(), TaxLiabilityTotalAmt = 200M }, Form941 = new Form941Details { EmployeeCnt = 3, WagesAmt = 5750M, FedIncomeTaxWHAmt = 130M, WagesNotSubjToSSMedcrTaxInd = true, Line5aInitialAmt = 564.51M, Line5bInitialAmt = 0M, Line5cInitialAmt = 0M, Line5dInitialAmt = 0M, Line5a = 70M, Line5b = 0M, Line5c = 0M, Line5d = 0M, Line5e = 70M, TaxOnUnreportedTips3121qAmt = 0M, CurrentQtrFractionsCentsAmt = 0M, CurrentQuarterSickPaymentAmt = 0M, CurrQtrTipGrpTermLifeInsAdjAmt = 0M, Line12 = 200M, Line11a = 0M, Line14 = 0M, Line15 = 0M, Line6 = 200M, Line10 = 200M, TotTaxDepositAmt = 200M } }; }
public ActionResult CreateForm941(Form941Data form941) { var responseJson = string.Empty; form941.Sequence = Constants.Sequence; form941.RecordId = null; form941.ReturnHeader.ReturnType = Constants.ReturnType; form941.ReturnHeader.Business.IsEIN = true; form941.ReturnHeader.Business.IsForeign = false; form941.ReturnData.Form941.IsPayrollTaxCredit = false; if (form941?.ReturnHeader?.ThirdPartyDesignee != null && (!string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.Name) || !string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.Phone) || !string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.PIN))) { form941.ReturnHeader.IsThirdPartyDesignee = true; } if (form941?.ReturnHeader?.BusinessStatusDetails != null) { if (form941.ReturnHeader.BusinessStatusDetails.IsBusinessClosed == false) { form941.ReturnHeader.BusinessStatusDetails.BusinessClosedDetails = new BusinessClosedDetails(); } if (form941.ReturnHeader.BusinessStatusDetails.IsBusinessTransferred == false) { form941.ReturnHeader.BusinessStatusDetails.BusinessTransferredDetails = new BusinessTransferredDetails(); } } var form941Response = new Form941CreateReturnResponse(); var form941ReturnList = new Form941CreateReturnRequest { Form941Records = new List <Form941Data>() }; form941ReturnList.Form941Records.Add(form941); string ApiUrl = Utility.GetAppSettings(Constants.PublicAPIUrlWithJWT); // Generate JSON for Form 941 var requestJson = JsonConvert.SerializeObject(form941ReturnList, Formatting.Indented); //Get Access token from OAuth API response GetAccessToken AccessToken = new GetAccessToken(HttpContext); string GeneratedAccessToken = AccessToken.GetGeneratedAccessToken(); if (!string.IsNullOrWhiteSpace(GeneratedAccessToken)) { using (var apiClient = new HttpClient()) { //API URL to Create Form 941 Return string requestUri = "Form941/Create"; apiClient.BaseAddress = new Uri(ApiUrl); //Construct HTTP headers in Generated Token. OAuthGenerator.ConstructHeadersWithAccessToken(apiClient, GeneratedAccessToken); //Post Response var apiResponse = apiClient.PostAsJsonAsync(requestUri, form941ReturnList).Result; if (apiResponse != null && apiResponse.IsSuccessStatusCode) { //Read Response var createResponse = apiResponse.Content.ReadAsAsync <Form941CreateReturnResponse>().Result; if (createResponse != null) { responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Success Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); } } else { var createResponse = apiResponse.Content.ReadAsAsync <Object>().Result; responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Error Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); } } } return(PartialView("APIResponseStatus", form941Response)); }
public ActionResult APIResponseStatus(Form941Data form941) { //Hardcoded values for Sequence var responseJson = string.Empty; form941.Sequence = "Record1"; form941.RecordId = null; form941.ReturnHeader.ReturnType = null; form941.ReturnHeader.Business.IsEIN = true; form941.ReturnHeader.Business.IsForeign = false; if (form941?.ReturnHeader?.ThirdPartyDesignee != null && (!string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.Name) || !string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.Phone) || !string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.PIN))) { form941.ReturnHeader.IsThirdPartyDesignee = true; } if (form941?.ReturnHeader?.BusinessStatusDetails != null) { if (form941.ReturnHeader.BusinessStatusDetails.IsBusinessClosed == false) { form941.ReturnHeader.BusinessStatusDetails.BusinessClosedDetails = new BusinessClosedDetails(); } if (form941.ReturnHeader.BusinessStatusDetails.IsBusinessTransferred == false) { form941.ReturnHeader.BusinessStatusDetails.BusinessTransferredDetails = new BusinessTransferredDetails(); } } var form941Response = new Form941CreateReturnResponse(); var form941ReturnList = new Form941CreateReturnRequest { Form941Records = new List <Form941Data>() }; form941ReturnList.Form941Records.Add(form941); // Generate JSON for Form 941 var requestJson = JsonConvert.SerializeObject(form941ReturnList, Formatting.Indented); string authType = Utility.GetAppSettings("AuthenticationType"); if (!string.IsNullOrWhiteSpace(authType) && authType.ToUpper() == "JWT") { //Get URLs from App.Config string oAuthApiUrl = Utility.GetAppSettings("OAuthApiUrl"); string apiUrl = Utility.GetAppSettings("PublicAPIUrlWithJWT"); //Call OAuth API using (var oAuthClient = new HttpClient()) { string oAuthRequestUri = Utility.GetAppSettings("OAuthApiMethodRoute"); oAuthClient.BaseAddress = new Uri(oAuthApiUrl); //Generate JWS and get access token (JWT) OAuthGenerator.GenerateJWSAndGetAccessToken(oAuthClient); //Read OAuth API response var response = oAuthClient.GetAsync(oAuthRequestUri).Result; if (response != null && response.IsSuccessStatusCode) { var oauthApiResponse = response.Content.ReadAsAsync <AccessTokenResponse>().Result; if (oauthApiResponse != null && oauthApiResponse.StatusCode == 200) { //Get Access token from OAuth API response string accessToken = oauthApiResponse.AccessToken; //Access token is valid for one hour. After that call OAuth API again & get new Access token. if (!string.IsNullOrWhiteSpace(accessToken)) { //Call TaxBandits API using the Access token //Access token is valid for one hour. After that call OAuth API again & get new Access token. using (var apiClient = new HttpClient()) { //API URL to Create Form 941 Return string requestUri = "Form941/Create"; apiClient.BaseAddress = new Uri(apiUrl); //Construct HTTP headers //If Access token got expired, call OAuth API again & get new Access token. OAuthGenerator.ConstructHeadersWithAccessToken(apiClient, accessToken); //Get Response var apiResponse = apiClient.PostAsJsonAsync(requestUri, form941ReturnList).Result; if (apiResponse != null && response.IsSuccessStatusCode) { //Read Response var createResponse = apiResponse.Content.ReadAsAsync <Form941CreateReturnResponse>().Result; if (createResponse != null) { responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Success Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); if (form941Response.SubmissionId != null && form941Response.SubmissionId != Guid.Empty) { //Adding Form941CreateReturnResponse Response to Session APISession.AddForm941APIResponse(form941Response); } } } else { var createResponse = apiResponse.Content.ReadAsAsync <Object>().Result; responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Error Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); } } } } } } } else { using (var client = new PublicAPIClient()) { //API URL to Create Form 941 Return string requestUri = "Form941/Create"; //POST APIGenerateAuthHeader.GenerateAuthHeader(client, requestUri, HttpMethod.Post.ToString()); //Get Response var response = client.PostAsJsonAsync(requestUri, form941ReturnList).Result; if (response != null && response.IsSuccessStatusCode) { //Read Response var createResponse = response.Content.ReadAsAsync <Form941CreateReturnResponse>().Result; if (createResponse != null) { responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Success Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); if (form941Response.SubmissionId != null && form941Response.SubmissionId != Guid.Empty) { //Adding Form941CreateReturnResponse Response to Session APISession.AddForm941APIResponse(form941Response); } } } else { var createResponse = response.Content.ReadAsAsync <Object>().Result; responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Error Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); } } } return(PartialView(form941Response)); }
public ActionResult APIResponseStatus(Form941Data form941) { //Hardcoded values for Sequence var responseJson = string.Empty; form941.Sequence = "Record1"; form941.RecordId = null; form941.ReturnHeader.ReturnType = null; form941.ReturnHeader.Business.IsEIN = true; form941.ReturnHeader.Business.IsForeign = false; if (form941?.ReturnHeader?.ThirdPartyDesignee != null && (!string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.Name) || !string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.Phone) || !string.IsNullOrEmpty(form941.ReturnHeader.ThirdPartyDesignee.PIN))) { form941.ReturnHeader.IsThirdPartyDesignee = true; } if (form941?.ReturnHeader?.BusinessStatusDetails != null) { if (form941.ReturnHeader.BusinessStatusDetails.IsBusinessClosed == false) { form941.ReturnHeader.BusinessStatusDetails.BusinessClosedDetails = new BusinessClosedDetails(); } if (form941.ReturnHeader.BusinessStatusDetails.IsBusinessTransferred == false) { form941.ReturnHeader.BusinessStatusDetails.BusinessTransferredDetails = new BusinessTransferredDetails(); } } var form941Response = new Form941CreateReturnResponse(); var form941ReturnList = new Form941CreateReturnRequest { Form941Records = new List <Form941Data>() }; form941ReturnList.Form941Records.Add(form941); // Generate JSON for Form 941 var requestJson = JsonConvert.SerializeObject(form941ReturnList, Formatting.Indented); using (var client = new PublicAPIClient()) { //API URL to Create Form 941 Return string requestUri = "Form941/Create"; //POST APIGenerateAuthHeader.GenerateAuthHeader(client, requestUri, HttpMethod.Post.ToString()); //Get Response var response = client.PostAsJsonAsync(requestUri, form941ReturnList).Result; if (response != null && response.IsSuccessStatusCode) { //Read Response var createResponse = response.Content.ReadAsAsync <Form941CreateReturnResponse>().Result; if (createResponse != null) { responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Success Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); if (form941Response.SubmissionId != null && form941Response.SubmissionId != Guid.Empty) { //Adding Form941CreateReturnResponse Response to Session APISession.AddForm941APIResponse(form941Response); } } } else { var createResponse = response.Content.ReadAsAsync <Object>().Result; responseJson = JsonConvert.SerializeObject(createResponse, Formatting.Indented); //Deserializing JSON (Error Response) to Form941CreateReturnResponse object form941Response = new JavaScriptSerializer().Deserialize <Form941CreateReturnResponse>(responseJson); } } return(PartialView(form941Response)); }