public ActionResult FinancialEdit()
 {
     if (!string.IsNullOrEmpty(Session["username"] as string))
     {
         if (Session["roleid"].ToString() == "1" || Session["roleid"].ToString() == "2")
         {
             try
             {
                 FinancialData fd        = new FinancialData();
                 Financial     financial = fd.GetFinancialData();
                 return(View(financial));
             }
             catch (Exception ex)
             {
                 return(View("Error", ex));
             }
         }
         else
         {
             return(View("Accessdenied"));
         }
     }
     else
     {
         return(RedirectToAction("Index", "Login"));
     }
 }
Example #2
0
        public async Task SubmitApplication(Guid applicationId, ApplyData applyData, FinancialData financialData, Guid submittedBy)
        {
            using (var connection = new SqlConnection(_config.SqlConnectionString))
            {
                await connection.OpenAsync();

                await connection.ExecuteAsync(@"UPDATE Apply
                                                SET ApplicationStatus = @ApplicationStatus, 
                                                    ApplyData = @applyData, 
                                                    AssessorReviewStatus = @AssessorReviewStatus, 
                                                    GatewayReviewStatus = @GatewayReviewStatus, 
                                                    FinancialReviewStatus = @FinancialReviewStatus,
                                                    UpdatedBy = @submittedBy, 
                                                    UpdatedAt = GETUTCDATE() 
                                                WHERE  (Apply.ApplicationId = @applicationId)",
                                              new { applicationId,
                                                    ApplicationStatus = ApplicationStatus.Submitted,
                                                    applyData,
                                                    AssessorReviewStatus  = AssessorReviewStatus.New,
                                                    GatewayReviewStatus   = GatewayReviewStatus.New,
                                                    FinancialReviewStatus = FinancialReviewStatus.New,
                                                    submittedBy });

                await connection.ExecuteAsync(@"insert into FinancialData ([ApplicationId]
               ,[TurnOver],[Depreciation],[ProfitLoss],[Dividends],[IntangibleAssets]
               ,[Assets],[Liabilities],[ShareholderFunds],[Borrowings],[AccountingReferenceDate],[AccountingPeriod],[AverageNumberofFTEEmployees])
                values (@ApplicationId, @TurnOver,@Depreciation, @ProfitLoss,@Dividends,@IntangibleAssets
               ,@Assets,@Liabilities,@ShareholderFunds,@Borrowings,@AccountingReferenceDate,@AccountingPeriod,@AverageNumberofFTEEmployees)",
                                              financialData);

                connection.Close();
            }
        }
        public string Print()
        {
            FinancialData fd        = new FinancialData();
            Financial     financial = fd.GetFinancialData();

            return(new PageOrientations().RenderRazorViewToString(this, "Print", financial));
        }
        public async Task <IActionResult> Put(string companySymbol, int year, [FromBody] FinancialData financialData)
        {
            if (financialData.CompanySymbol != companySymbol || financialData.Year != year)
            {
                return(BadRequest("Invalid financial data query"));
            }

            if (ModelState.IsValid)
            {
                var updatedFinancialData = await _financialsService.UpdateFinancialData(financialData);

                if (updatedFinancialData != null)
                {
                    _logger.LogDebug($"Financial data updated: {updatedFinancialData.Id}");
                    return(Ok(updatedFinancialData));
                }
                else
                {
                    return(BadRequest("Failed to save state"));
                }
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
        public static List <FinancialData> FinancialData()
        {
            Random rnd = new Random();

            List <FinancialData> listdata = new List <FinancialData>();

            for (int i = 0; i < 15; i++)
            {
                FinancialData data = new FinancialData();
                data.Date = DateTime.Today.AddDays(i);

                if (i > 0)
                {
                    data.Open = listdata[i - 1].Close;
                }
                else
                {
                    data.Open = 1000;
                }

                data.High  = data.Open + rnd.Next(20);
                data.Low   = data.Open - rnd.Next(20);
                data.Close = rnd.Next((int)data.Low, (int)data.High);

                listdata.Add(data);
            }
            return(listdata);
        }
Example #6
0
        public void GetHistoricalIndexDataTest_PriceDeserializeTest()
        {
            ApiRequest.Debug = true;
            var stock = FinancialData.GetHistoricalIndexData("AAPL").Result;

            Assert.AreEqual(4, stock.Count);
            ApiRequest.Debug = false;
        }
Example #7
0
        public void GetAllStockIndexes_CountTest()
        {
            ApiRequest.Debug = true;
            var list = FinancialData.GetAllStockIndexes().Result;

            Assert.AreEqual(list.Count, 2);
            ApiRequest.Debug = false;
        }
Example #8
0
        public void GetStockIndexPrice_LengthTest()
        {
            ApiRequest.Debug = true;
            var stock = FinancialData.GetStockIndexPrice("AAPL").Result;

            Assert.AreEqual(1, stock.Length);
            ApiRequest.Debug = false;
        }
Example #9
0
        public void GetHistoricalIndexDataTest_SymbolDeserializeTest()
        {
            ApiRequest.Debug = true;
            var stock = FinancialData.GetHistoricalIndexData("AAPL").Result;

            Assert.AreEqual("AAPL", stock[0].symbol);
            ApiRequest.Debug = false;
        }
Example #10
0
        public void GetStockIndexPrice_PriceDeserializeTest()
        {
            ApiRequest.Debug = true;
            var stock = FinancialData.GetStockIndexPrice("AAPL").Result;

            Assert.AreEqual(120.58, stock[0].price);
            ApiRequest.Debug = false;
        }
Example #11
0
        public void GetAllStockIndexes_PriceDeserializeTest()
        {
            ApiRequest.Debug = true;
            var list = FinancialData.GetAllStockIndexes().Result;

            Assert.AreNotEqual(0, list[0].price);
            ApiRequest.Debug = false;
        }
Example #12
0
        public void GetAllStockIndexes_NameDeserializeTest()
        {
            ApiRequest.Debug = true;
            var list = FinancialData.GetAllStockIndexes().Result;

            Assert.AreEqual("Apple Inc.", list[0].name);
            ApiRequest.Debug = false;
        }
Example #13
0
        public void GetAllStockIndexes_SymbolDeserializeTest()
        {
            ApiRequest.Debug = true;
            var list = FinancialData.GetAllStockIndexes().Result;

            Assert.AreEqual("AAPL", list[0].symbol);
            ApiRequest.Debug = false;
        }
 public async Task <FinancialData> UpdateFinancialData(FinancialData financialData)
 {
     _repository.Update(financialData);
     if (await _repository.SaveChangesAsync())
     {
         return(financialData);
     }
     else
     {
         return(null);
     }
 }
        public async Task <FinancialData> AddFinancialData(FinancialData financialData)
        {
            var addedFinancialData = _repository.Add(financialData);

            if (await _repository.SaveChangesAsync())
            {
                return(addedFinancialData);
            }
            else
            {
                return(null);
            }
        }
        //[Route("getfinancialdatabyid/{id}")]
        public ActionResult Get(string id)
        {
            FinancialData financialData = _iFinanceBusinessLogics.GetFinancialDataById(id);

            if (Session["financialData"] != null)
            {
                List <FinancialData> financialDataFromSession = (List <FinancialData>)Session["financialData"];

                return(View(financialDataFromSession.FirstOrDefault(x => x.Id == id)));
            }
            else
            {
                return(View(new FinancialData()));
            }
        }
        public async Task <FinancialData> GetPartyFinancialProfile(long applicationNumber, int partyId)
        {
            var party = GetParty(applicationNumber, partyId).Result;

            if (party != null && party is IndividualParty customer && customer.FinancialProfile != null)
            {
                var financialData = new FinancialData
                {
                    ExpenseInfo   = customer.FinancialProfile.ExpenseInfo,
                    IncomeInfo    = customer.FinancialProfile.IncomeInfo,
                    TotalIncomes  = CalculateTotal(customer.FinancialProfile.IncomeInfo),
                    TotalExpenses = CalculateTotal(customer.FinancialProfile.ExpenseInfo)
                };
                await _auditClient.WriteLogEntry(AuditLogEntryAction.Get, AuditLogEntryStatus.Success, "financial-profile", applicationNumber.ToString(), "View financial profile", financialData);

                return(financialData);
            }
 // GET: Financial
 public ActionResult Index()
 {
     if (!string.IsNullOrEmpty(Session["username"] as string))
     {
         try
         {
             FinancialData fd        = new FinancialData();
             Financial     financial = fd.GetFinancialData();
             return(View(financial));
         }
         catch (Exception ex)
         {
             return(View("Error", ex));
         }
     }
     else
     {
         return(RedirectToAction("Index", "Login"));
     }
 }
        public async Task <string> GetTotalAssets()
        {
            string urlEndPoint = @"https://query1.finance.yahoo.com/v10/finance/quoteSummary/PPBI?formatted=true&crumb=OBbTIit3Bcr&lang=en-US&region=US&modules=incomeStatementHistory%2CcashflowStatementHistory%2CbalanceSheetHistory%2CincomeStatementHistoryQuarterly%2CcashflowStatementHistoryQuarterly%2CbalanceSheetHistoryQuarterly%2Cearnings&corsDomain=finance.yahoo.com";

            string totalAssets = null;

            var result = await this.GetJsonAsync(urlEndPoint);

            if (!result.Success)
            {
                return(totalAssets);
            }

            FinancialData rootObject = JsonConvert.DeserializeObject <FinancialData>(result.Content);

            Result[] myResult = rootObject.quoteSummary1.result;

            totalAssets = myResult[0].balanceSheetHistoryQuarterly.balanceSheetStatements[0].totalAssets.raw.ToString();

            return(totalAssets);
        }
        public async Task <IActionResult> Post([FromBody] FinancialData financialData)
        {
            if (ModelState.IsValid)
            {
                var createdFinancialData = await _financialsService.AddFinancialData(financialData);

                if (createdFinancialData != null)
                {
                    var location = $"api/financials/{financialData.CompanySymbol}?year={financialData.Year}";
                    _logger.LogDebug($"Financial data created: {location}");
                    return(Created(location, createdFinancialData));
                }
                else
                {
                    return(BadRequest("Failed to save state"));
                }
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
 public ActionResult FinancialEdit(FormCollection form)
 {
     if (!string.IsNullOrEmpty(Session["username"] as string))
     {
         try
         {
             Financial financial = new Financial();
             financial.importantUpdate  = form["importantUpdate"];
             financial.masterPlanUpdate = form["masterPlanUpdate"];
             List <Revenue> revenues = new List <Revenue>();
             for (int i = 1; i <= 11; i++)
             {
                 Revenue obj = new Revenue();
                 obj.act     = form["act" + i.ToString()];
                 obj.bud     = form["bud" + i.ToString()];
                 obj.var     = form["var" + i.ToString()];
                 obj.actfor  = form["actfor" + i.ToString()];
                 obj.budfor  = form["budfor" + i.ToString()];
                 obj.varfor  = form["varfor" + i.ToString()];
                 obj.comment = form["comment" + i.ToString()];
                 obj.action  = form["action" + i.ToString()];
                 revenues.Add(obj);
             }
             financial.revenues = revenues;
             FinancialData fd = new FinancialData();
             fd.updateFinancialData(financial);
             return(RedirectToAction("Index"));
         }
         catch (Exception ex)
         {
             return(View("Error", ex));
         }
     }
     else
     {
         return(RedirectToAction("Index", "Login"));
     }
 }
Example #22
0
        public FinancialFinalData getDataFromTimeReports(int year, int month, int accountId)
        {
            List <Project>       includedActiveProjects = projectRepo.getSelectedAccountActiveBillableProjects(accountId);
            List <FinancialData> returnData             = new List <FinancialData>();
            FinancialFinalData   finalReturnData        = new FinancialFinalData();

            finalReturnData.sendingData = returnData;
            finalReturnData.financialDataMissingMembers = "";
            List <EmployeeProjectsData> activeTeamMemberData = empRepo.getEmployeesOfSelectedAccount(accountId);
            Account       selectedAccount      = accountRepo.Get(accountId);
            List <string> timePortProjectCodes = new List <string>();

            if (selectedAccount != null)
            {
                try
                {
                    timePortProjectCodes = selectedAccount.AllProjectCodes.Split(',').ToList();
                }
                catch (Exception e)
                {
                    timePortProjectCodes = new List <string>();
                }
            }
            string projectListQuery = null;

            if (year != 0 & month != 0 & accountId != 0)
            {
                if (timePortProjectCodes.Count != 0)
                {
                    projectListQuery = "1!=1";

                    foreach (string code in timePortProjectCodes)
                    {
                        string projectCode = code;
                        if (projectCode != null)
                        {
                            projectListQuery = projectListQuery + " OR jte.project_key = '" + projectCode + "'";
                        }
                    }
                    StringBuilder builder = new StringBuilder();

                    string startDate = year + "-" + month + "-01";

                    builder.Append("select sum(jte.duration) as time_duration, ju.system_id,");

                    builder.Append(" (select sum(jte1.duration) from JiraTimeSheetEntries jte1, JiraUsers ju1 where jte1.user_id = ju1.user_id and ju1.system_id = ju.system_id and jte1.time_log_date between '" + startDate + "' and (SELECT DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, '" + startDate + "') + 1, 0)))) as total_duration");

                    builder.Append(" from[JiraTimeSheetEntries] jte,[JiraUsers] ju where jte.user_id=ju.user_id ");

                    if (projectListQuery != null)
                    {
                        builder.Append(" and (" + projectListQuery + ")");
                    }

                    //builder.Append(" and jte.time_log_date between '"+startDate+"' and (SELECT DATEADD(s,-1, DATEADD(mm, DATEDIFF(m,0,'"+startDate+ "')+1,0))) and jp.category_id='1' group by ju.system_id order by ju.system_id");

                    builder.Append(" and jte.time_log_date between '" + startDate + "' and (SELECT DATEADD(s,-1, DATEADD(mm, DATEDIFF(m,0,'" + startDate + "')+1,0))) and 1=1 group by ju.system_id order by ju.system_id");

                    Debug.WriteLine("Query   " + builder.ToString());


                    List <Object[]> resultsArray = this._db.Query(builder.ToString()).Select(d => new object[] { d.time_duration, d.system_id, d.total_duration }).ToList();

                    Debug.WriteLine("Length " + resultsArray.Count);
                    //List<EmployeeProjectsData> activeAccountMembers=empRepo.getEmployeesOfSelectedAccount(accountId);
                    foreach (Object[] dataArray in resultsArray)
                    {
                        TeamMembers member = teamRepo.getSelectedEmployee((String)dataArray[1]);
                        if (member != null)
                        {
                            List <EmployeeProjects> empProjectData = empRepo.getEmployeeProjectsForSelectedAccount(member.Id, accountId);
                            if (empProjectData.Count != 0)
                            {
                                for (int i = 0; i < activeTeamMemberData.Count; i++)
                                {
                                    if (activeTeamMemberData[i].EmpId == member.Id)
                                    {
                                        activeTeamMemberData.RemoveAt(i);
                                    }
                                }
                                FinancialData financialdata      = new FinancialData();
                                double        allocatedHourCount = 0;
                                int           billableType       = 0;
                                foreach (EmployeeProjects empProject in empProjectData)
                                {
                                    allocatedHourCount = allocatedHourCount + empProject.BillableHours;
                                    billableType       = empProject.Billable;
                                }
                                financialdata.EmpId          = member.Id;
                                financialdata.EmpName        = member.MemberName;
                                financialdata.AccountId      = accountId;
                                financialdata.AllocatedHours = allocatedHourCount;
                                financialdata.Year           = year;
                                financialdata.Month          = month;
                                financialdata.BillableHours  = Convert.ToDouble(dataArray[0]);
                                financialdata.TotalHours     = Convert.ToDouble(dataArray[2]);
                                financialdata.BillingType    = billableType;
                                returnData.Add(financialdata);
                            }
                        }
                        Debug.WriteLine("resultedData " + dataArray[0] + " " + dataArray[1] + " " + dataArray[2] + " ");
                    }
                    string missingMembers = "";
                    if (activeTeamMemberData.Count != 0)
                    {
                        foreach (EmployeeProjectsData empData in activeTeamMemberData)
                        {
                            missingMembers += empData.EmpName + " , ";
                        }
                        missingMembers = missingMembers.Substring(0, missingMembers.Length - 2);
                        finalReturnData.financialDataMissingMembers = missingMembers;
                    }
                }
                //           select sum(jte.duration) as time_duration, ju.system_id, (select sum(jte1.duration) from JiraTimeSheetEntries jte1, JiraUsers ju1 where jte1.user_id = ju1.user_id and ju1.system_id = ju.system_id and jte1.time_log_date between '2014-12-01' and(SELECT DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, '2014-12-1') + 1, 0)))) from[JiraTimeSheetEntries] jte,[JiraUsers]
                //       ju where jte.user_id=ju.user_id and(jte.project_key= 'CQ' or jte.project_key= 'CD')
                //and jte.time_log_date between '2014-12-01' and (SELECT DATEADD(s,-1, DATEADD(mm, DATEDIFF(m,0,'2014-12-1')+1,0))) and jte.category_id='1' group by ju.system_id
                return(finalReturnData);
            }
            else
            {
                return(null);
            }
        }
Example #23
0
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='companySymbol'>
 /// </param>
 /// <param name='financialData'>
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <FinancialData> CreateFinancialDataAsync(this IFinancialsAPI operations, string companySymbol, FinancialData financialData = default(FinancialData), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.CreateFinancialDataWithHttpMessagesAsync(companySymbol, financialData, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
Example #24
0
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='companySymbol'>
 /// </param>
 /// <param name='year'>
 /// </param>
 /// <param name='financialData'>
 /// </param>
 public static FinancialData UpdateFinancialData(this IFinancialsAPI operations, string companySymbol, int year, FinancialData financialData = default(FinancialData))
 {
     return(Task.Factory.StartNew(s => ((IFinancialsAPI)s).UpdateFinancialDataAsync(companySymbol, year, financialData), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }