Пример #1
0
        public static LaneAttendance Create(Lane lane, User supervisor)
        {
            LaneAttendance inst = Create();
            TSB            tsb  = TSB.GetCurrent();

            if (null != tsb)
            {
                tsb.AssignTo(inst);
            }
            if (null != lane)
            {
                lane.AssignTo(inst);
            }
            if (null != supervisor)
            {
                supervisor.AssignTo(inst);
            }
            return(inst);
        }
Пример #2
0
        /// <summary>
        /// Create Lane Payment.
        /// </summary>
        /// <param name="lane">The Lane instance.</param>
        /// <param name="collector">The User instance.</param>
        /// <param name="payment">The Payment instance.</param>
        /// <param name="date">The payment date time.</param>
        /// <param name="amount">The payment amount.</param>
        /// <returns>Returns LanePayment instance.</returns>
        public static NDbResult <LanePayment> Create(Lane lane, User collector,
                                                     Payment payment, DateTime date, decimal amount)
        {
            var result          = new NDbResult <LanePayment>();
            SQLiteConnection db = Default;

            if (null == db)
            {
                result.DbConenctFailed();
                return(result);
            }
            LanePayment inst = Create();
            var         tsb  = TSB.GetCurrent().Value();

            if (null == tsb)
            {
                result.ParameterIsNull();
            }
            else
            {
                if (null != tsb)
                {
                    tsb.AssignTo(inst);
                }
                if (null != lane)
                {
                    lane.AssignTo(inst);
                }
                if (null != collector)
                {
                    collector.AssignTo(inst);
                }
                if (null != payment)
                {
                    payment.AssignTo(inst);
                }
                inst.PaymentDate = date;
                inst.Amount      = amount;
                result.Success(inst);
            }
            return(result);
        }
Пример #3
0
        /// <summary>
        /// Gets Current Lane Attendance by Lane.
        /// </summary>
        /// <param name="lane">The Lane instance.</param>
        /// <returns>Returns LaneAttendance instance.</returns>
        public static NDbResult <LaneAttendance> GetCurrentByLane(Lane lane)
        {
            var result          = new NDbResult <LaneAttendance>();
            SQLiteConnection db = Default;

            if (null == db)
            {
                result.DbConenctFailed();
                return(result);
            }
            if (null == lane)
            {
                result.ParameterIsNull();
                return(result);
            }
            lock (sync)
            {
                MethodBase med = MethodBase.GetCurrentMethod();
                try
                {
                    string cmd = string.Empty;
                    cmd += "SELECT * ";
                    cmd += "  FROM LaneAttendanceView ";
                    cmd += " WHERE LaneId = ? ";
                    cmd += "   AND End = ? ";
                    cmd += " ORDER BY UserId, Begin";

                    var ret = NQuery.Query <FKs>(cmd, lane.LaneId,
                                                 DateTime.MinValue).FirstOrDefault();
                    var data = (null != ret) ? ret.ToModel() : null;
                    result.Success(data);
                }
                catch (Exception ex)
                {
                    med.Err(ex);
                    result.Error(ex);
                }
                return(result);
            }
        }
Пример #4
0
        /// <summary>
        /// Search.
        /// </summary>
        /// <param name="lane">The Lane instance.</param>
        /// <returns>Returns List of LaneAttendance.</returns>
        public static NDbResult <List <LaneAttendance> > Search(Lane lane)
        {
            var result          = new NDbResult <List <LaneAttendance> >();
            SQLiteConnection db = Default;

            if (null == db)
            {
                result.DbConenctFailed();
                return(result);
            }
            if (null == lane)
            {
                result.ParameterIsNull();
                return(result);
            }
            lock (sync)
            {
                MethodBase med = MethodBase.GetCurrentMethod();
                try
                {
                    string cmd = string.Empty;
                    cmd += "SELECT * ";
                    cmd += "  FROM LaneAttendanceView ";
                    cmd += " WHERE LaneId = ? ";
                    cmd += " ORDER BY UserId, Begin";

                    var rets    = NQuery.Query <FKs>(cmd, lane.LaneId).ToList();
                    var results = rets.ToModels();
                    result.Success(results);
                }
                catch (Exception ex)
                {
                    med.Err(ex);
                    result.Error(ex);
                }
                return(result);
            }
        }