Exemple #1
0
 private void SoftDelete(tblT_CheckIn checkIn)
 {
     if (checkIn != null)
     {
         checkIn.Status_FK = (int)RecordStatus.Deleted;
     }
 }
Exemple #2
0
 private void HardDelete(tblT_CheckIn checkIn)
 {
     if (checkIn != null)
     {
         Db.tblT_CheckIn.Remove(checkIn);
     }
 }
        public tblT_CheckIn CreateFromDTO(MobileCheckInDTO checkInDTO, DateTime dateStamp)
        {
            if (checkInDTO == null)
            {
                throw new ArgumentNullException("CheckIn model is null.");
            }
            checkInDTO.Status_FK    = (int)RecordStatus.Active;
            checkInDTO.CreatedBy    = User.Username;
            checkInDTO.CreatedDate  = dateStamp;
            checkInDTO.UpdatedBy    = User.Username;
            checkInDTO.UpdatedDate  = dateStamp;
            checkInDTO.WaktuCheckIn = dateStamp;
            tblT_CheckIn checkIn = checkInDTO.ToObject <tblT_CheckIn>();

            checkIn.LongitudeCheckIn = checkInDTO.LongitudeCheckIn;
            checkIn.LatitudeCheckIn  = checkInDTO.LatitudeCheckIn;
            checkIn.MCCCheckIn       = checkInDTO.MCCCheckIn;
            checkIn.MNCCheckIn       = checkInDTO.MNCCheckIn;
            checkIn.LACCheckIn       = checkInDTO.LACCheckIn;
            checkIn.CellIDCheckIn    = checkInDTO.CellIDCheckIn;
            checkIn.WaktuCheckIn     = dateStamp;
            checkIn.SOWAssign_FK     = checkInDTO.SOWAssign_FK;

            if (!string.IsNullOrEmpty(checkInDTO.FileString))
            {
                var bytes = Convert.FromBase64String(checkInDTO.FileString);
                checkIn.File = bytes;
            }


            return(checkIn);
        }
Exemple #4
0
 public void Update(CheckInDTO checkInDTO, DateTime dateStamp)
 {
     if (checkInDTO == null)
     {
         throw new ArgumentNullException("CheckIn model is null.");
     }
     tblT_CheckIn checkIn = checkInFactory.CreateFromDbAndUpdateFromDTO(checkInDTO, dateStamp);
 }
        public tblT_CheckIn Insert(CheckInDTO checkInDTO, DateTime dateStamp)
        {
            if (checkInDTO == null)
            {
                throw new ArgumentNullException("CheckIn model is null.");
            }
            tblT_CheckIn checkIn = checkInFactory.CreateFromDTO(checkInDTO, dateStamp);

            return(Db.tblT_CheckIn.Add(checkIn));
        }
        public SaveResult <CheckInEntryModel> Save(MobileCheckInDTO checkInDTO, DateTime dateStamp)
        {
            checkInDTO.WaktuCheckIn = dateStamp;

            var checkins = checkInQuery.GetQuery().Where(x => x.SOWAssign_FK == checkInDTO.SOWAssign_FK).ToList();

            var uncheckedOuts = checkins.Where(x => x.WaktuCheckOut == null);

            if (uncheckedOuts != null)
            {
                if (uncheckedOuts.Count() > 0)
                {
                    throw new Kairos.KairosException($"Task ID '{uncheckedOuts.FirstOrDefault().SOWAssign_FK}' is not checked out. Cannot checkin, until previous task checked out.");
                }
            }

            ModelValidationResult validationResult = checkInValidator.Validate(checkInDTO);
            bool success            = false;
            CheckInEntryModel model = null;

            if (validationResult.IsValid)
            {
                tblT_CheckIn checkIn = AddCheckIn(checkInDTO, dateStamp);
                Db.SaveChanges();
                checkInDTO.CheckIn_PK = checkIn.CheckIn_PK;
                AddSOWTrackResultIfUserRoleIsDriver(checkInDTO, dateStamp);
                Db.SaveChanges();
                success = true;
                model   = checkInEntryDataProvider.Get(checkIn.CheckIn_PK);
            }

            return(new SaveResult <CheckInEntryModel>
            {
                Success = success,
                Message = validationResult.IsValid ? "Data successfully created." : "Validation error occured.",
                Model = model,
                ValidationResult = validationResult
            });
        }
        public SaveResult <CheckInEntryModel> Save(CheckInDTO checkInDTO, DateTime dateStamp)
        {
            ModelValidationResult validationResult = checkInValidator.Validate(checkInDTO);
            bool success            = false;
            CheckInEntryModel model = null;

            if (validationResult.IsValid)
            {
                tblT_CheckIn checkIn = Insert(checkInDTO, dateStamp);
                Db.SaveChanges();

                success = true;
                model   = checkInEntryDataProvider.Get(checkIn.CheckIn_PK);
            }

            return(new SaveResult <CheckInEntryModel>
            {
                Success = success,
                Message = validationResult.IsValid ? "Data successfully created." : "Validation error occured.",
                Model = model,
                ValidationResult = validationResult
            });
        }
Exemple #8
0
        public DeleteResult <tblT_CheckIn> Execute(int checkInPK, DeleteMethod deleteMethod)
        {
            tblT_CheckIn checkIn = Db.tblT_CheckIn.Find(checkInPK);

            if (checkIn == null)
            {
                return(new DeleteResult <tblT_CheckIn>()
                {
                    Success = false,
                    Message = $"Id '{checkInPK}' is not found.",
                    Record = null
                });
            }

            switch (deleteMethod)
            {
            case DeleteMethod.Soft:
                SoftDelete(checkIn);
                break;

            case DeleteMethod.Hard:
                HardDelete(checkIn);
                break;

            default:
                break;
            }

            Db.SaveChanges();

            return(new DeleteResult <tblT_CheckIn>()
            {
                Success = true,
                Message = $"CheckIn with Id '{checkInPK}' successfully deleted.",
                Record = checkIn
            });
        }