Beispiel #1
0
        static string FormatDescription(BankOperationModel bankOperation)
        {
            var description = string.Format("Bank operation #{0}[{1}] is in progress.", bankOperation.Id,
                                            bankOperation.CategoryCode);

            return(description);
        }
Beispiel #2
0
        static string FormatCode(BankOperationModel bankOperation)
        {
            const string pattern = "OP_{0}";
            var          code    = string.Format(pattern, bankOperation.CategoryCode.Replace('-', '_')).ToUpperInvariant();

            return(code);
        }
Beispiel #3
0
        public OperationProgressEvent(Guid appOperationId, BankOperationModel bankOperation)
        {
            Argument.NotNull(bankOperation, "bankOperation");

            OperationId     = appOperationId;
            BankOperationId = bankOperation.Id;
            Data            = JsonConvert.SerializeObject(bankOperation);

            Code        = FormatCode(bankOperation);
            Description = FormatDescription(bankOperation);
        }
Beispiel #4
0
        public static List <BankOperationModel> GetBankOperations(string playerName, int start, int count)
        {
            var operations = new List <BankOperationModel>();

            using (var connection = Database.GetConnection()) {
                connection.Open();
                var command = connection.CreateCommand();
                command.CommandText =
                    "SELECT * FROM money WHERE (source = @playerName OR receiver = @playerName) AND (type = @opTransfer ";
                command.CommandText +=
                    "OR type = @opDeposit OR type = @opWithdraw) ORDER BY date DESC, hour DESC LIMIT @start, @count";
                command.Parameters.AddWithValue("@playerName", playerName);
                command.Parameters.AddWithValue("@opTransfer", GenRes.bank_op_transfer);
                command.Parameters.AddWithValue("@opDeposit", GenRes.bank_op_deposit);
                command.Parameters.AddWithValue("@opWithdraw", GenRes.bank_op_withdraw);
                command.Parameters.AddWithValue("@start", start);
                command.Parameters.AddWithValue("@count", count);

                using (var reader = command.ExecuteReader()) {
                    while (reader.Read())
                    {
                        var bankOperation = new BankOperationModel();
                        {
                            bankOperation.source   = reader.GetString("source");
                            bankOperation.receiver = reader.GetString("receiver");
                            bankOperation.type     = reader.GetString("type");
                            bankOperation.amount   = reader.GetInt32("amount");
                            bankOperation.day      = reader.GetString("date").Split(' ')[0];
                            bankOperation.time     = reader.GetString("hour");
                        }

                        operations.Add(bankOperation);
                    }
                }
            }

            return(operations);
        }