コード例 #1
0
 private void SoftDelete(tblT_SOWResult sowResult)
 {
     if (sowResult != null)
     {
         sowResult.Status_FK = (int)RecordStatus.Deleted;
     }
 }
コード例 #2
0
 private void HardDelete(tblT_SOWResult sowResult)
 {
     if (sowResult != null)
     {
         Db.tblT_SOWResult.Remove(sowResult);
     }
 }
コード例 #3
0
 public void Update(SOWResultDTO sowResultDTO, DateTime dateStamp)
 {
     if (sowResultDTO == null)
     {
         throw new ArgumentNullException("SOWResult model is null.");
     }
     tblT_SOWResult sowResult = sowResultFactory.CreateFromDbAndUpdateFromDTO(sowResultDTO, dateStamp);
 }
コード例 #4
0
        public tblT_SOWResult AddSOWResult(SOWResultDTO sowResultDTO, DateTime dateStamp)
        {
            if (sowResultDTO == null)
            {
                throw new ArgumentNullException("SOWResult model is null.");
            }
            tblT_SOWResult sowResult = sowResultFactory.CreateFromDTO(sowResultDTO, dateStamp);

            return(Db.tblT_SOWResult.Add(sowResult));
        }
コード例 #5
0
        public tblT_SOWResult CreateFromDTO(SOWResultDTO sowResultDTO, DateTime dateStamp)
        {
            if (sowResultDTO == null)
            {
                throw new ArgumentNullException("SOWResult model is null.");
            }
            sowResultDTO.Status_FK   = (int)RecordStatus.Active;
            sowResultDTO.CreatedBy   = User.Username;
            sowResultDTO.CreatedDate = dateStamp;
            sowResultDTO.UpdatedBy   = User.Username;
            sowResultDTO.UpdatedDate = dateStamp;
            tblT_SOWResult sowResult = sowResultDTO.ToObject <tblT_SOWResult>();

            sowResult.FileUrl    = sowResultDTO.FileUrl;
            sowResult.CheckIn_FK = sowResultDTO.CheckIn_FK;
            return(sowResult);
        }
コード例 #6
0
        public SaveResult <SOWResultEntryModel> Save(SOWResultDTO sowResultDTO, DateTime dateStamp)
        {
            ModelValidationResult validationResult = sowResultValidator.Validate(sowResultDTO);
            bool success = false;
            SOWResultEntryModel model = null;

            if (validationResult.IsValid)
            {
                var result = Db.tblT_SOWResult.FirstOrDefault(x => x.CheckIn_FK == sowResultDTO.CheckIn_FK);

                if (result != null && result.IsApproved != null)
                {
                    var approval = result.IsApproved.Value == true ? "approved" : "rejected";
                    throw new Kairos.KairosException($"This task is already {approval}");
                }

                tblT_SOWResult sowResult = null;
                if (result == null)
                {
                    sowResult = AddSOWResult(sowResultDTO, dateStamp);
                }
                else
                {
                    sowResult = Update(sowResultDTO, dateStamp);
                }
                Db.SaveChanges();

                success = true;
                model   = sowResultEntryDataProvider.Get(sowResult.SOWResult_PK);
            }

            return(new SaveResult <SOWResultEntryModel>
            {
                Success = success,
                Message = validationResult.IsValid ? "Data successfully created." : "Validation error occured.",
                Model = model,
                ValidationResult = validationResult
            });
        }
コード例 #7
0
        public DeleteResult <tblT_SOWResult> Execute(int sowResultPK, DeleteMethod deleteMethod)
        {
            tblT_SOWResult sowResult = Db.tblT_SOWResult.Find(sowResultPK);

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

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

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

            default:
                break;
            }

            Db.SaveChanges();

            return(new DeleteResult <tblT_SOWResult>()
            {
                Success = true,
                Message = $"SOWResult with Id '{sowResultPK}' successfully deleted.",
                Record = sowResult
            });
        }