public static bool CheckReviewCompatibility(EbWebForm webForm) { if (webForm.TableRowId <= 0) { throw new FormException("Bad Request. [34]", (int)HttpStatusCode.BadRequest, "Review operation failed due to invalid data id", "EbReviewHelper -> CheckReviewCompatibility"); } EbReview ebReview = (EbReview)webForm.FormSchema.ExtendedControls.Find(e => e is EbReview); if (ebReview == null) { throw new FormException("Review control not found! Contact Admin.", (int)HttpStatusCode.BadRequest, "check the form refid and review control", "EbReviewHelper -> CheckReviewCompatibility"); } bool ok = false; if (webForm.FormData?.MultipleTables.ContainsKey(ebReview.TableName) == true) { SingleTable Table = webForm.FormData.MultipleTables[ebReview.TableName]; if (Table != null && Table.Count > 0) { Table.RemoveAll(e => e.RowId > 0); if (Table.Count == 1) { ok = true; } } } if (!ok) { throw new FormException("Bad review request", (int)HttpStatusCode.BadRequest, "check the form refid and review control", "EbReviewHelper -> CheckReviewCompatibility"); } return(true); }
private void PreProcessTransationData(Dictionary <string, string> DictVmAll, TableSchema _table, ColumnSchema _column, ref string old_val, ref string new_val) { if (old_val == "[null]") { old_val = null; } if (new_val == "[null]") { new_val = null; } bool fetchVm = _column.Control is EbPowerSelect || _column.Control is EbDGPowerSelectColumn; fetchVm = fetchVm || (_column.Control is EbSimpleSelect && (_column.Control as EbSimpleSelect).IsDynamic); fetchVm = fetchVm || (_column.Control is EbDGSimpleSelectColumn && (_column.Control as EbDGSimpleSelectColumn).IsDynamic); if (fetchVm)//copy vm for dm { string key = string.Concat(_table.TableName, "_", _column.ColumnName); string temp = string.Empty; if (!string.IsNullOrEmpty(new_val)) { temp = string.Concat(new_val, ","); } if (!string.IsNullOrEmpty(old_val)) { temp += string.Concat(old_val, ","); } if (!temp.Equals(string.Empty)) { if (!DictVmAll.ContainsKey(key)) { DictVmAll.Add(key, temp); } else { DictVmAll[key] = string.Concat(DictVmAll[key], temp); } } } else if (_table.TableType == WebFormTableTypes.Review) { EbReview reviewCtrl = this.WebForm.FormSchema.ExtendedControls.Find(e => e is EbReview) as EbReview; old_val = this.GetFormattedApprovalData(old_val, _column, reviewCtrl); new_val = this.GetFormattedApprovalData(new_val, _column, reviewCtrl); } else { old_val = this.GetFormattedData(_column.Control, old_val); new_val = this.GetFormattedData(_column.Control, new_val); } }
public _FG_Review(EbReview CtrlObj, SingleTable Table) { this.Name = CtrlObj.Name; this.CtrlObj = CtrlObj; this.Table = Table; SingleRow _Row = null; foreach (SingleRow Row in this.Table) { if (Row.RowId <= 0 && Row.Columns.Count > 0) { _Row = Row; break; } } this.stages = new Dictionary <string, _FG_Review_Stage>(); foreach (ReviewStageAbstract stage in this.CtrlObj.FormStages) { EbReviewStage _eb_stage = stage as EbReviewStage; List <_FG_Review_Action> fg_actions = new List <_FG_Review_Action>(); foreach (ReviewActionAbstract action in _eb_stage.StageActions) { fg_actions.Add(new _FG_Review_Action((action as EbReviewAction).Name)); } if (_Row != null && Convert.ToString(_Row["stage_unique_id"]) == _eb_stage.EbSid) { EbReviewAction eb_curAct = (EbReviewAction)_eb_stage.StageActions.Find(e => (e as EbReviewAction).EbSid == Convert.ToString(_Row["action_unique_id"])); _FG_Review_Action fg_curAct = null; if (eb_curAct != null) { fg_curAct = fg_actions.Find(e => e.name == eb_curAct.Name); } this.stages.Add(_eb_stage.Name, new _FG_Review_Stage(_eb_stage.Name, fg_actions, fg_curAct)); this.currentStage = this.stages[_eb_stage.Name]; } else { this.stages.Add(_eb_stage.Name, new _FG_Review_Stage(_eb_stage.Name, fg_actions, null)); } } }
private static FG_Review GetReviewGlobal(EbReview Rev, SingleTable Table, SingleTable TableBkUp) { Dictionary <string, FG_Review_Stage> stages = new Dictionary <string, FG_Review_Stage>(); FG_Review_Stage currentStage = null; SingleRow Row = null; foreach (SingleRow _Row in Table) { if (_Row.RowId <= 0 && _Row.Columns.Count > 0) { Row = _Row; break; } } foreach (EbReviewStage stage in Rev.FormStages) { List <FG_Review_Action> actions = new List <FG_Review_Action>(); foreach (EbReviewAction action in stage.StageActions) { actions.Add(new FG_Review_Action(action.Name)); } if (Row != null && Convert.ToString(Row["stage_unique_id"]) == stage.EbSid) { EbReviewAction curAct = stage.StageActions.Find(e => e.EbSid == Convert.ToString(Row["action_unique_id"])); FG_Review_Action fg_curAct = null; if (curAct != null) { fg_curAct = actions.Find(e => e.name == curAct.Name); } stages.Add(stage.Name, new FG_Review_Stage(stage.Name, actions, fg_curAct)); currentStage = stages[stage.Name]; } else { stages.Add(stage.Name, new FG_Review_Stage(stage.Name, actions, null)); } } return(new FG_Review(stages, currentStage)); }
private string GetFormattedApprovalData(string unf_val, ColumnSchema _column, EbReview reviewCtrl) { string val = unf_val; if (_column.ColumnName == FormConstants.stage_unique_id) { unf_val = reviewCtrl.FormStages.Find(e => e.EbSid == val)?.Name; if (val == FormConstants.__system_stage) { unf_val = "System"; } } else if (_column.ColumnName == FormConstants.action_unique_id) { foreach (EbReviewStage st in reviewCtrl.FormStages) { EbReviewAction act = st.StageActions.Find(e => e.EbSid == val); if (act != null) { unf_val = act.Name; break; } else if (val == FormConstants.__review_reset) { unf_val = "Reset"; break; } } } return(unf_val); }