private void SoftDelete(tblT_SOWTrack sowTrack)
 {
     if (sowTrack != null)
     {
         sowTrack.Status_FK = (int)RecordStatus.Deleted;
     }
 }
 private void HardDelete(tblT_SOWTrack sowTrack)
 {
     if (sowTrack != null)
     {
         Db.tblT_SOWTrack.Remove(sowTrack);
     }
 }
        private void UpdateSowTrack(SOWDTO sowDTO, DateTime dateStamp)
        {
            if (sowDTO == null)
            {
                throw new ArgumentNullException("SOW model is null.");
            }

            var tracks = Db.tblT_SOWTrack.Where(x => x.SOW_FK == sowDTO.SOW_PK);

            foreach (var track in tracks)
            {
                Db.tblT_SOWTrack.Remove(track);
            }
            foreach (var sowTrackDTO in sowDTO.SOWTracks)
            {
                if (sowTrackDTO.TipePekerjaan_FK == 0)
                {
                    continue;
                }
                sowTrackDTO.SOW_FK = sowDTO.SOW_PK;
                var           bts      = new BTSQuery(Db).GetByPrimaryKey(sowDTO.BTS_FK);
                tblT_SOWTrack sowTrack = sowTrackFactory.CreateFromDTO(sowTrackDTO, dateStamp);
                Db.tblT_SOWTrack.Add(sowTrack);
            }
        }
示例#4
0
 public void Update(SOWTrackDTO sowTrackDTO, DateTime dateStamp)
 {
     if (sowTrackDTO == null)
     {
         throw new ArgumentNullException("SOWTrack model is null.");
     }
     tblT_SOWTrack sowTrack = sowTrackFactory.CreateFromDbAndUpdateFromDTO(sowTrackDTO, dateStamp);
 }
示例#5
0
        public tblT_SOWTrack Insert(SOWTrackDTO sowTrackDTO, DateTime dateStamp)
        {
            if (sowTrackDTO == null)
            {
                throw new ArgumentNullException("SOWTrack model is null.");
            }
            tblT_SOWTrack sowTrack = sowTrackFactory.CreateFromDTO(sowTrackDTO, dateStamp);

            return(Db.tblT_SOWTrack.Add(sowTrack));
        }
        public tblT_SOWTrack CreateFromDTO(SOWTrackDTO sowTrackDTO, DateTime dateStamp)
        {
            if (sowTrackDTO == null)
            {
                throw new ArgumentNullException("SOWTrack model is null.");
            }
            sowTrackDTO.Status_FK   = (int)RecordStatus.Active;
            sowTrackDTO.CreatedBy   = User.Username;
            sowTrackDTO.CreatedDate = dateStamp;
            sowTrackDTO.UpdatedBy   = User.Username;
            sowTrackDTO.UpdatedDate = dateStamp;
            tblT_SOWTrack sowTrack = sowTrackDTO.ToObject <tblT_SOWTrack>();

            return(sowTrack);
        }
示例#7
0
        public SaveResult <SOWTrackEntryModel> Save(SOWTrackDTO sowTrackDTO, DateTime dateStamp)
        {
            ModelValidationResult validationResult = sowTrackValidator.Validate(sowTrackDTO);
            bool success             = false;
            SOWTrackEntryModel model = null;

            if (validationResult.IsValid)
            {
                tblT_SOWTrack sowTrack = Insert(sowTrackDTO, dateStamp);
                Db.SaveChanges();

                success = true;
                model   = sowTrackEntryDataProvider.Get(sowTrack.SOWTrack_PK);
            }

            return(new SaveResult <SOWTrackEntryModel>
            {
                Success = success,
                Message = validationResult.IsValid ? "Data successfully created." : "Validation error occured.",
                Model = model,
                ValidationResult = validationResult
            });
        }
        public DeleteResult <tblT_SOWTrack> Execute(int sowTrackPK, DeleteMethod deleteMethod)
        {
            tblT_SOWTrack sowTrack = Db.tblT_SOWTrack.Find(sowTrackPK);

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

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

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

            default:
                break;
            }

            Db.SaveChanges();

            return(new DeleteResult <tblT_SOWTrack>()
            {
                Success = true,
                Message = $"SOWTrack with Id '{sowTrackPK}' successfully deleted.",
                Record = sowTrack
            });
        }