public async Task <IActionResult> Edit(int id, [Bind("ID,TransactionDate,FundPortId,MFundFlowTypeId,MFundId,Cost,Nav,Units,NavConfirmed,LastUpdate")] FundTransaction fundTransaction)
        {
            if (id != fundTransaction.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(fundTransaction);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!FundTransactionExists(fundTransaction.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["FundPortId"]      = new SelectList(_context.FundPort, "ID", "Name", fundTransaction.FundPortId);
            ViewData["MFundId"]         = new SelectList(_context.MFund, "ID", "Abbr", fundTransaction.MFundId);
            ViewData["MFundFlowTypeId"] = new SelectList(_context.MFundFlowType, "ID", "Name", fundTransaction.MFundFlowTypeId);
            return(View(fundTransaction));
        }
示例#2
0
    private void InitialPayments(FundTransaction transaction)
    {
        IList <imSabaya.TransactionPayment> tp = transaction.Payments;

        for (int i = 0; i < tp.Count; i++)
        {
            //Payments.Add(tp[i].Payment);
            DataRow dr = dataTable.NewRow();
            Payment p  = tp[i].Payment;
            dr["ID"]    = p.PaymentID;
            dr["Payer"] = p.Payer != null?p.Payer.ToString() : strNull;

            dr["Payee"] = p.Payee != null?p.Payee.ToString() : strNull;

            dr["Type"]          = p.Type.Name;
            dr["Amount"]        = p.Amount != null ? p.Amount.Amount : 0m;
            dr["PaymentDate"]   = p.PaymentDate.ToString(base.DateOutputFormat);
            dr["DueDate"]       = p.DueDate.ToString(base.DateOutputFormat);
            dr["TransactionNo"] = tp[i].Transaction.TransactionNo;
            dr["PaymentID"]     = p.PaymentID;
            dataTable.Rows.Add(dr);
        }
        for (int j = 0; j < transaction.Children.Count; j++)
        {
            InitialPayments(transaction.Children[j].Child as FundTransaction);
        }
    }
    private void InitialTerminationInfos(FundTransaction transaction)
    {
        PFTransaction pfTransaction = transaction as PFTransaction;

        if (pfTransaction == null)
        {
            return;
        }
        TerminationInfo info = pfTransaction.TerminationInfo;

        if (pfTransaction.Type.Code == PFConstants.PFTTCodeMemberTermination)
        {
            if (info != null && info.Member != null)
            {
                DataRow dr = dataTable.NewRow();
                dr["ID"]              = info.TerminationInfoID;
                dr["Member"]          = string.Format("{0}/{1}/{2}", info.Member.DivisionCode, info.Member.EmployeeNo, info.Member.Name.ToString(base.LanguageCode));
                dr["TerminationType"] = info.TerminationCategory.ToString(base.LanguageCode);
                dataTable.Rows.Add(dr);
            }
        }

        for (int j = 0; j < transaction.Children.Count; j++)
        {
            InitialTerminationInfos(transaction.Children[j].Child as FundTransaction);
        }
    }
        public async Task <IActionResult> Create([Bind("ID,TransactionDate,FundPortId,MFundFlowTypeId,MFundId,Cost,Nav,Units,NavConfirmed,LastUpdate")] FundTransaction fundTransaction)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.GetUserAsync(User);

                //var client = new HttpClient();
                //var queryString = HttpUtility.ParseQueryString(string.Empty);
                //var key = _configuration.GetSection("SecSubscriptionKey").GetSection("FundDailyInfo").Value.ToString();
                //var navDate = fundTransaction.TransactionDate.ToString("yyyy-MM-dd");
                //var projectId = await _context.MFund.FirstOrDefaultAsync(x => x.ID == fundTransaction.MFundId);

                //// Request headers
                //client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", key);

                //var uri = "https://api.sec.or.th/FundDailyInfo/" + projectId.ProjectId + "/dailynav/" + navDate + "?" + queryString;
                //var response = await client.GetAsync(uri);

                //if (response.StatusCode == System.Net.HttpStatusCode.OK)
                //{
                //    var jsonString = await client.GetStringAsync(uri);
                //    DailyNavModel obj = JsonConvert.DeserializeObject<DailyNavModel>(jsonString);

                //    fundTransaction.Nav = obj.last_val;
                //    fundTransaction.Units = Math.Round(fundTransaction.Cost / fundTransaction.Nav, 4);
                //    fundTransaction.NavConfirmed = true;
                //}

                fundTransaction.User = user;
                _context.Add(fundTransaction);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["FundPortId"]      = new SelectList(_context.FundPort, "ID", "Name", fundTransaction.FundPortId);
            ViewData["MFundId"]         = new SelectList(_context.MFund, "ID", "Abbr", fundTransaction.MFundId);
            ViewData["MFundFlowTypeId"] = new SelectList(_context.MFundFlowType, "ID", "Name", fundTransaction.MFundFlowTypeId);
            return(View(fundTransaction));
        }
示例#5
0
        /// <summary>
        /// Create fund transaction, typically a deposit Perform fund deposit
        /// </summary>
        /// <exception cref="FieldNation.SDK.Client.ApiException">Thrown when fails to make API call</exception>
        /// <param name="companyId">ID of company</param>
        /// <param name="financeId">ID of finance account</param>
        /// <param name="fundTransaction">Transaction attempting to be created (optional)</param>
        /// <returns>Task of ApiResponse</returns>
        public async System.Threading.Tasks.Task <ApiResponse <Object> > UpdateFundByFundAsyncWithHttpInfo(int?companyId, int?financeId, FundTransaction fundTransaction = null)
        {
            // verify the required parameter 'companyId' is set
            if (companyId == null)
            {
                throw new ApiException(400, "Missing required parameter 'companyId' when calling CreditCardApi->UpdateFundByFund");
            }
            // verify the required parameter 'financeId' is set
            if (financeId == null)
            {
                throw new ApiException(400, "Missing required parameter 'financeId' when calling CreditCardApi->UpdateFundByFund");
            }

            var    localVarPath         = "/company/{company_id}/funds/{finance_id}";
            var    localVarPathParams   = new Dictionary <String, String>();
            var    localVarQueryParams  = new List <KeyValuePair <String, String> >();
            var    localVarHeaderParams = new Dictionary <String, String>(Configuration.DefaultHeader);
            var    localVarFormParams   = new Dictionary <String, String>();
            var    localVarFileParams   = new Dictionary <String, FileParameter>();
            Object localVarPostBody     = null;

            // to determine the Content-Type header
            String[] localVarHttpContentTypes = new String[] {
                "application/json",
                "application/x-www-form-urlencoded",
                "multipart/form-data"
            };
            String localVarHttpContentType = Configuration.ApiClient.SelectHeaderContentType(localVarHttpContentTypes);

            // to determine the Accept header
            String[] localVarHttpHeaderAccepts = new String[] {
                "application/json"
            };
            String localVarHttpHeaderAccept = Configuration.ApiClient.SelectHeaderAccept(localVarHttpHeaderAccepts);

            if (localVarHttpHeaderAccept != null)
            {
                localVarHeaderParams.Add("Accept", localVarHttpHeaderAccept);
            }

            if (companyId != null)
            {
                localVarPathParams.Add("company_id", Configuration.ApiClient.ParameterToString(companyId));                    // path parameter
            }
            if (financeId != null)
            {
                localVarPathParams.Add("finance_id", Configuration.ApiClient.ParameterToString(financeId));                    // path parameter
            }
            if (fundTransaction != null && fundTransaction.GetType() != typeof(byte[]))
            {
                localVarPostBody = Configuration.ApiClient.Serialize(fundTransaction); // http body (model) parameter
            }
            else
            {
                localVarPostBody = fundTransaction; // byte array
            }


            // make the HTTP request
            IRestResponse localVarResponse = (IRestResponse)await Configuration.ApiClient.CallApiAsync(localVarPath,
                                                                                                       Method.POST, localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarFileParams,
                                                                                                       localVarPathParams, localVarHttpContentType);

            int localVarStatusCode = (int)localVarResponse.StatusCode;

            if (ExceptionFactory != null)
            {
                Exception exception = ExceptionFactory("UpdateFundByFund", localVarResponse);
                if (exception != null)
                {
                    throw exception;
                }
            }

            return(new ApiResponse <Object>(localVarStatusCode,
                                            localVarResponse.Headers.ToDictionary(x => x.Name, x => x.Value.ToString()),
                                            null));
        }
示例#6
0
 /// <summary>
 /// Create fund transaction, typically a deposit Perform fund deposit
 /// </summary>
 /// <exception cref="FieldNation.SDK.Client.ApiException">Thrown when fails to make API call</exception>
 /// <param name="companyId">ID of company</param>
 /// <param name="financeId">ID of finance account</param>
 /// <param name="fundTransaction">Transaction attempting to be created (optional)</param>
 /// <returns>Task of void</returns>
 public async System.Threading.Tasks.Task UpdateFundByFundAsync(int?companyId, int?financeId, FundTransaction fundTransaction = null)
 {
     await UpdateFundByFundAsyncWithHttpInfo(companyId, financeId, fundTransaction);
 }
示例#7
0
 /// <summary>
 /// Create fund transaction, typically a deposit Perform fund deposit
 /// </summary>
 /// <exception cref="FieldNation.SDK.Client.ApiException">Thrown when fails to make API call</exception>
 /// <param name="companyId">ID of company</param>
 /// <param name="financeId">ID of finance account</param>
 /// <param name="fundTransaction">Transaction attempting to be created (optional)</param>
 /// <returns></returns>
 public void UpdateFundByFund(int?companyId, int?financeId, FundTransaction fundTransaction = null)
 {
     UpdateFundByFundWithHttpInfo(companyId, financeId, fundTransaction);
 }
 public VOFundTransaction(FundTransaction instance)
 {
     this.instance = instance;
 }
示例#9
0
 public VOChangeMoney(imSabayaContext context, FundTransaction instance)
 {
     this.instance = instance;
     this.context  = context;
     this.pfTran   = PFTransaction.FindByTransactionNo(this.context, this.instance.TransactionNo);
 }