private void SoftDelete(tblT_SOWAssign sowAssign) { if (sowAssign != null) { sowAssign.Status_FK = (int)RecordStatus.Deleted; } }
private void HardDelete(tblT_SOWAssign sowAssign) { if (sowAssign != null) { Db.tblT_SOWAssign.Remove(sowAssign); } }
public void Update(SOWAssignDTO sowAssignDTO, DateTime dateStamp) { if (sowAssignDTO == null) { throw new ArgumentNullException("SOWAssign model is null."); } tblT_SOWAssign sowAssign = sowAssignFactory.CreateFromDbAndUpdateFromDTO(sowAssignDTO, dateStamp); }
private void UpdateSowAssign(SOWDTO sowDTO, DateTime dateStamp) { if (sowDTO == null) { throw new ArgumentNullException("SOW model is null."); } foreach (var sowAssignDTO in sowDTO.SOWAssigns) { sowAssignDTO.SOW_FK = sowDTO.SOW_PK; tblT_SOWAssign existingSowAssign = null; if (sowAssignDTO.SOWAssign_PK != 0) { existingSowAssign = this.Db.tblT_SOWAssign.Find(sowAssignDTO.SOWAssign_PK); } bool isAssigned = false; if (existingSowAssign != null) { isAssigned = existingSowAssign.User_FK != 0; } int assignedUserFk = 0; if (existingSowAssign != null && existingSowAssign.User_FK != null) { assignedUserFk = existingSowAssign.User_FK.Value; } bool assignedUserIsChanged = assignedUserFk != sowAssignDTO.User_FK; if (isAssigned && assignedUserIsChanged) { //create new row (history) based on changed user assign, and set its finish date tblT_SOWAssign sowAssign = sowAssignFactory.CreateFromDTO(sowAssignDTO, dateStamp); sowAssign.User_FK = assignedUserFk; sowAssign.TglSelesai = dateStamp; Db.tblT_SOWAssign.Add(sowAssign); } //note that, CreateFromDbAndUpdateFromDTO method is also create a Modified state in db context object //so any update process is in the factory class if (sowAssignDTO.SOWAssign_PK != 0) { tblT_SOWAssign sowAssignToUpdate = sowAssignFactory.CreateFromDbAndUpdateFromDTO(sowAssignDTO, dateStamp); } else { if (assignedUserIsChanged) { sowAssignDTO.SOW_FK = sowDTO.SOW_PK; sowAssignDTO.TglMulai = dateStamp; tblT_SOWAssign sowAssignToBeAdded = sowAssignFactory.CreateFromDTO(sowAssignDTO, dateStamp); Db.tblT_SOWAssign.Add(sowAssignToBeAdded); } } } }
public tblT_SOWAssign Insert(SOWAssignDTO sowAssignDTO, DateTime dateStamp) { if (sowAssignDTO == null) { throw new ArgumentNullException("SOWAssign model is null."); } tblT_SOWAssign sowAssign = sowAssignFactory.CreateFromDTO(sowAssignDTO, dateStamp); return(Db.tblT_SOWAssign.Add(sowAssign)); }
private void AddSowAssign(SOWDTO sowDTO, DateTime dateStamp) { if (sowDTO == null) { throw new ArgumentNullException("SOW model is null."); } foreach (var sowAssignDTO in sowDTO.SOWAssigns) { sowAssignDTO.SOW_FK = sowDTO.SOW_PK; tblT_SOWAssign sowAssign = sowAssignFactory.CreateFromDTO(sowAssignDTO, dateStamp); Db.tblT_SOWAssign.Add(sowAssign); } }
public tblT_SOWAssign CreateFromDTO(SOWAssignDTO sowAssignDTO, DateTime dateStamp) { if (sowAssignDTO == null) { throw new ArgumentNullException("SOWAssign model is null."); } sowAssignDTO.Status_FK = (int)RecordStatus.Active; sowAssignDTO.CreatedBy = User.Username; sowAssignDTO.CreatedDate = dateStamp; sowAssignDTO.UpdatedBy = User.Username; sowAssignDTO.UpdatedDate = dateStamp; tblT_SOWAssign sowAssign = sowAssignDTO.ToObject <tblT_SOWAssign>(); return(sowAssign); }
public SaveResult <SOWAssignEntryModel> Save(SOWAssignDTO sowAssignDTO, DateTime dateStamp) { ModelValidationResult validationResult = sowAssignValidator.Validate(sowAssignDTO); bool success = false; SOWAssignEntryModel model = null; if (validationResult.IsValid) { tblT_SOWAssign sowAssign = Insert(sowAssignDTO, dateStamp); Db.SaveChanges(); success = true; model = sowAssignEntryDataProvider.Get(sowAssign.SOWAssign_PK); } return(new SaveResult <SOWAssignEntryModel> { Success = success, Message = validationResult.IsValid ? "Data successfully created." : "Validation error occured.", Model = model, ValidationResult = validationResult }); }
public DeleteResult <tblT_SOWAssign> Execute(int sowAssignPK, DeleteMethod deleteMethod) { tblT_SOWAssign sowAssign = Db.tblT_SOWAssign.Find(sowAssignPK); if (sowAssign == null) { return(new DeleteResult <tblT_SOWAssign>() { Success = false, Message = $"Id '{sowAssignPK}' is not found.", Record = null }); } switch (deleteMethod) { case DeleteMethod.Soft: SoftDelete(sowAssign); break; case DeleteMethod.Hard: HardDelete(sowAssign); break; default: break; } Db.SaveChanges(); return(new DeleteResult <tblT_SOWAssign>() { Success = true, Message = $"SOWAssign with Id '{sowAssignPK}' successfully deleted.", Record = sowAssign }); }