Exemple #1
0
        // update all object members on a row in table based on primary key
        // links:
        //  docLink: http://sql2x.org/documentationLink/ce75e72e-fb16-4f4e-a2e6-dbd079dfa206
        public void Update(CrudeDefaultUserContract contract)
        {
            var data = new CrudeDefaultUserData();

            ContractToData(contract, data);
            data.Update();
        }
Exemple #2
0
        // update all object members on a row in table based on primary key, on a transaction
        // the transaction and or connection state is not changed in any way other than what SqlClient does to it.
        // it is the callers responsibility to commit or rollback the transaction
        // links:
        //  docLink: http://sql2x.org/documentationLink/b798ad6b-f4b8-466a-9086-6588a814fcf3
        public void Update(CrudeDefaultUserContract contract, SqlConnection connection, SqlTransaction transaction)
        {
            var data = new CrudeDefaultUserData();

            ContractToData(contract, data);
            data.Update(connection, transaction);
        }
Exemple #3
0
        // insert all object members as a new row in table
        // links:
        //  docLink: http://sql2x.org/documentationLink/75aad010-e6aa-4f19-a6e5-597456aa20d8
        public void Insert(CrudeDefaultUserContract contract)
        {
            var data = new CrudeDefaultUserData();

            ContractToData(contract, data);
            data.Insert();
        }
Exemple #4
0
 // copy all rows from a List of SOAP Contracts to a List of serialized data objects
 // links:
 //  docLink: http://sql2x.org/documentationLink/1c6c6b9c-e201-4590-8c69-d38a0ad2a9f7
 public static void ContractListToDataList(List <CrudeDefaultUserContract> contractList, List <CrudeDefaultUserData> dataList)
 {
     foreach (CrudeDefaultUserContract contract in contractList)
     {
         var data = new CrudeDefaultUserData();
         CrudeDefaultUserService.ContractToData(contract, data);
         dataList.Add(data);
     }
 }
Exemple #5
0
        public CrudeDefaultUserContract FetchByDefaultUserName(string defaultUserName)
        {
            var dataAccessLayer = new CrudeDefaultUserData();
            var contract        = new CrudeDefaultUserContract();

            dataAccessLayer.FetchByDefaultUserName(defaultUserName);
            DataToContract(dataAccessLayer, contract);

            return(contract);
        }
Exemple #6
0
        // fetch by Primary key into current object
        // links:
        //  docLink: http://sql2x.org/documentationLink/bbab4791-c9e7-49bf-90d5-fca19b1fedaa
        // parameters:
        //  defaultUserId: primary key of table default_user
        public CrudeDefaultUserContract FetchByDefaultUserId(System.Guid defaultUserId)
        {
            var dataAccessLayer = new CrudeDefaultUserData();
            var contract        = new CrudeDefaultUserContract();

            dataAccessLayer.FetchByDefaultUserId(defaultUserId);
            DataToContract(dataAccessLayer, contract);

            return(contract);
        }
Exemple #7
0
 // copy all columns from a SOAP Contract to a serialized data object
 // links:
 //  docLink: http://sql2x.org/documentationLink/10700d38-2227-4021-be12-2f4f206f5dd9
 public static void ContractToData(CrudeDefaultUserContract contract, CrudeDefaultUserData data)
 {
     data.DefaultUserId          = contract.DefaultUserId;
     data.DefaultUserCode        = contract.DefaultUserCode;
     data.DefaultUserName        = contract.DefaultUserName;
     data.Email                  = contract.Email;
     data.Password               = contract.Password;
     data.DefaultStateRcd        = contract.DefaultStateRcd;
     data.CreatedByDefaultUserId = contract.CreatedByDefaultUserId;
     data.DateTime               = contract.DateTime;
     data.LastActivityDateTime   = contract.LastActivityDateTime;
 }
Exemple #8
0
 // copy all columns from a serialized data object to a SOAP Contract
 // links:
 //  docLink: http://sql2x.org/documentationLink/7553d6dd-da65-4a72-84c8-81f2f99ef4f5
 public static void DataToContract(CrudeDefaultUserData data, CrudeDefaultUserContract contract)
 {
     contract.DefaultUserId          = data.DefaultUserId;
     contract.DefaultUserCode        = data.DefaultUserCode;
     contract.DefaultUserName        = data.DefaultUserName;
     contract.Email                  = data.Email;
     contract.Password               = data.Password;
     contract.DefaultStateRcd        = data.DefaultStateRcd;
     contract.CreatedByDefaultUserId = data.CreatedByDefaultUserId;
     contract.DateTime               = data.DateTime;
     contract.LastActivityDateTime   = data.LastActivityDateTime;
 }
Exemple #9
0
        // copy all rows from a List of serialized data objects to a List of SOAP Contracts,
        //  with a limit on number of returned rows and order by columns, starting at a specific row
        // links:
        //  docLink: http://sql2x.org/documentationLink/3fe9f1b3-97b6-4f58-a0f2-adfcbd973bfc
        public List <CrudeDefaultUserContract> FetchAllWithLimitAndOffset(int limit, int offset)
        {
            var list = new List <CrudeDefaultUserContract>();
            List <CrudeDefaultUserData> dataList = CrudeDefaultUserData.FetchAllWithLimitAndOffset(limit, offset);

            foreach (CrudeDefaultUserData crudeDefaultUser in dataList)
            {
                var contract = new CrudeDefaultUserContract();
                DataToContract(crudeDefaultUser, contract);
                list.Add(contract);
            }

            return(list);
        }
Exemple #10
0
        // copy all rows from a List of serialized data objects in CrudeDefaultUserData to a List of SOAP Contracts
        // links:
        //  docLink: http://sql2x.org/documentationLink/9204c68e-93b8-4c77-af3c-3181985ff75f
        public List <CrudeDefaultUserContract> FetchAll()
        {
            var list = new List <CrudeDefaultUserContract>();
            List <CrudeDefaultUserData> dataList = CrudeDefaultUserData.FetchAll();

            foreach (CrudeDefaultUserData crudeDefaultUser in dataList)
            {
                var contract = new CrudeDefaultUserContract();
                DataToContract(crudeDefaultUser, contract);
                list.Add(contract);
            }

            return(list);
        }
Exemple #11
0
        // fetch all rows from table into new List of Contracts, filtered by any column
        // links:
        //  docLink: http://sql2x.org/documentationLink/ce01ef4a-5cd0-4e51-b211-9c0a15b791a0
        public List <CrudeDefaultUserContract> FetchWithFilter(System.Guid defaultUserId, string defaultUserCode, string defaultUserName, string email, string password, string defaultStateRcd, System.Guid createdByDefaultUserId, System.DateTime dateTime, System.DateTime lastActivityDateTime)
        {
            var list = new List <CrudeDefaultUserContract>();
            List <CrudeDefaultUserData> dataList = CrudeDefaultUserData.FetchWithFilter(
                defaultUserId: defaultUserId,
                defaultUserCode: defaultUserCode,
                defaultUserName: defaultUserName,
                email: email,
                password: password,
                defaultStateRcd: defaultStateRcd,
                createdByDefaultUserId: createdByDefaultUserId,
                dateTime: dateTime,
                lastActivityDateTime: lastActivityDateTime
                );

            foreach (CrudeDefaultUserData data in dataList)
            {
                var crudeDefaultUserContract = new CrudeDefaultUserContract();
                DataToContract(data, crudeDefaultUserContract);
                list.Add(crudeDefaultUserContract);
            }

            return(list);
        }
        /// <summary>
        /// Add an activity
        /// </summary>
        /// <param name="userId">User who triggered the activity</param>
        public void AddActivity(
            Guid userId,
            string userActivityTypeRcd,
            string activityNote,
            string originatingAddress
            )
        {
            CrudeDefaultUserActivityData defaultUserActivity = new CrudeDefaultUserActivityData {
                DefaultUserActivityId      = Guid.NewGuid(),
                DefaultUserActivityTypeRcd = userActivityTypeRcd,
                UserActivityNote           = activityNote,
                OriginatingAddress         = originatingAddress,
                DefaultUserId = userId,
                DateTime      = DateTime.UtcNow
            };

            defaultUserActivity.Insert();

            CrudeDefaultUserData defaultUser = new CrudeDefaultUserData();

            defaultUser.FetchByDefaultUserId(userId);
            defaultUser.LastActivityDateTime = DateTime.UtcNow;
            defaultUser.Update(); // todo, possible to only update LastActivityDateTime?
        }
Exemple #13
0
 // delete a row in table based on primary key
 // links:
 //  docLink: http://sql2x.org/documentationLink/eb0597e0-8ea0-425c-88af-213a170bbd5e
 public void Delete(System.Guid defaultUserId)
 {
     CrudeDefaultUserData.Delete(defaultUserId);
 }
Exemple #14
0
 // fetch by Foreign key into new List of class instances
 // links:
 //  docLink: http://sql2x.org/documentationLink/a7599485-4f00-4ebf-974d-53f69c43654e
 public List <CrudeDefaultUserContract> FetchByDefaultStateRcd(string defaultStateRcd)
 {
     return(DataListToContractList(CrudeDefaultUserData.FetchByDefaultStateRcd(defaultStateRcd)));
 }
Exemple #15
0
 // fetch by Foreign key into new List of class instances
 // links:
 //  docLink: http://sql2x.org/documentationLink/a7599485-4f00-4ebf-974d-53f69c43654e
 public List <CrudeDefaultUserContract> FetchByCreatedByDefaultUserId(System.Guid createdByDefaultUserId)
 {
     return(DataListToContractList(CrudeDefaultUserData.FetchByCreatedByDefaultUserId(createdByDefaultUserId)));
 }
Exemple #16
0
 // get a count of rows in table
 // links:
 //  docLink: http://sql2x.org/documentationLink/7cd5e52c-b3d7-4566-a27a-408d0732dd88
 public int FetchAllCount()
 {
     return(CrudeDefaultUserData.FetchAllCount());
 }
        /// <summary>
        /// Login a user and log the activity
        /// </summary>
        /// <param name="userCode">IP address will be resolved to whois netname, valid usercode stays</param>
        /// <returns>Internal user id</returns>
        public Guid Login(
            string userCode,
            bool overrideUserName
            )
        {
            CrudeDefaultUserData defaultUser = new CrudeDefaultUserData();

            try {
                defaultUser.FetchByDefaultUserName(userCode);

                // insert if not existing
                if (defaultUser.DefaultUserId == Guid.Empty)
                {
                    defaultUser.DefaultUserId   = new Guid();
                    defaultUser.DefaultUserCode = userCode;

                    // resolve net-name if user code appears to be an ip address
                    IPAddress ipAddress;
                    if (IPAddress.TryParse(userCode, out ipAddress))
                    {
                        defaultUser.DefaultUserName = ResolveNetnameFromIpV4(userCode);

                        // use ip user code if no net-name found
                        if (string.IsNullOrEmpty(defaultUser.DefaultUserName))
                        {
                            defaultUser.DefaultUserName = userCode;
                        }
                    }
                    else
                    {
                        // not an ip address, username is usercode
                        defaultUser.DefaultUserName = userCode;
                    }

                    defaultUser.DefaultStateRcd        = DefaultStateRef.Created;
                    defaultUser.DateTime               = DateTime.UtcNow;
                    defaultUser.CreatedByDefaultUserId = new Guid("FFFFFFFF-5555-5555-5555-FFFFFFFFFFFF");
                    defaultUser.Insert();

                    AddActivity(
                        defaultUser.DefaultUserId,
                        DefaultUserActivityTypeRef.Login,
                        "New user: "******"Internal"
                        );
                }
                else
                {
                    // resolve net-name if user name appears to be an ip address
                    // or an averride is asked for
                    IPAddress ipAddress;
                    if (IPAddress.TryParse(defaultUser.DefaultUserName, out ipAddress) ||
                        overrideUserName
                        )
                    {
                        string netName = ResolveNetnameFromIpV4(userCode);

                        // use new net-name if found
                        if (!string.IsNullOrEmpty(netName))
                        {
                            // a new net name was found, use that instead of ip address
                            defaultUser.DefaultUserName = netName;
                            defaultUser.DefaultStateRcd = DefaultStateRef.Updated;
                            defaultUser.DateTime        = DateTime.UtcNow;
                            defaultUser.Update();

                            AddActivity(
                                defaultUser.DefaultUserId,
                                DefaultUserActivityTypeRef.Login,
                                "Resolved user name: "
                                + defaultUser.DefaultUserName
                                + " from IP address: "
                                + userCode,
                                "Internal"
                                );
                        }
                    }
                }

                AddActivity(
                    defaultUser.DefaultUserId,
                    DefaultUserActivityTypeRef.Login,
                    defaultUser.DefaultUserName,
                    "Internal"
                    );
            } catch (Exception ex) {
                // todo, what happens with WCF here?
                throw new Exception("Login failed", ex);
            }

            return(defaultUser.DefaultUserId);
        }