private static BasicExpenseClaimGroup ReadExpenseClaimGroupFromDataReader(DbDataReader reader)
        {
            int      expenseClaimGroupId = reader.GetInt32(0);
            DateTime createdDateTime     = reader.GetDateTime(1);
            int      createdByPersonId   = reader.GetInt32(2);
            bool     open          = reader.GetInt32(3) != 0 ? true : false;
            string   groupTypeName = reader.GetString(4);
            string   groupData     = reader.GetString(5);

            ExpenseClaimGroupType groupType = (ExpenseClaimGroupType)Enum.Parse(typeof(ExpenseClaimGroupType), groupTypeName);

            return(new BasicExpenseClaimGroup(expenseClaimGroupId, createdDateTime, createdByPersonId, open, groupType, groupData));
        }
        /*
         *   IN organizationId INT,
         * IN dateTime DATETIME,
         * IN createdByPersonId INT,
         * IN expenseClaimGroupType VARCHAR(64),
         * IN expenseClaimGroupData TEXT
         */
        public int CreateExpenseClaimGroup(int organizationId, int personId, ExpenseClaimGroupType groupType, string groupData)
        {
            DateTime utcNow = DateTime.UtcNow;

            using (DbConnection connection = GetMySqlDbConnection())
            {
                connection.Open();

                DbCommand command = GetDbCommand("CreateExpenseClaimGroup", connection);
                command.CommandType = CommandType.StoredProcedure;

                AddParameterWithName(command, "organizationId", organizationId);
                AddParameterWithName(command, "createdByPersonId", personId);
                AddParameterWithName(command, "dateTime", utcNow);
                AddParameterWithName(command, "expenseClaimGroupType", groupType.ToString());
                AddParameterWithName(command, "expenseClaimGroupData", groupData);

                return(Convert.ToInt32(command.ExecuteScalar()));
            }
        }
示例#3
0
 public static ExpenseClaimGroup Create(Organization organization, Person creatingPerson, ExpenseClaimGroupType groupType,
                                        string rawGroupData)
 {
     return(FromIdentityAggressive(SwarmDb.GetDatabaseForWriting().CreateExpenseClaimGroup(organization.Identity, creatingPerson.Identity, groupType, rawGroupData)));
 }
 public BasicExpenseClaimGroup(int expenseClaimGroupId, DateTime createdDateTime, int createdByPersonId, bool open, ExpenseClaimGroupType groupType, string groupData)
 {
     this.ExpenseClaimGroupId = expenseClaimGroupId;
     this.CreatedDateTime     = createdDateTime;
     this.CreatedByPersonId   = createdByPersonId;
     this.Open      = open;
     this.GroupType = groupType;
     this.GroupData = groupData;
 }