public bool ProcessTransaction(ISnApi objSn, ISoApi objSo, IParamApi objParam) { var r = false; var nextcode = objSn.ValidateNextCode(); if (nextcode != objSn.RouteDetail.next_pass) { OnTransactionProceed(objSn.ReturnMsg); } _engageId = ProcessEngage(objSn, objSo, nextcode); if (_engageId > 0) { _transId = ProcessTransaction(objSn, _engageId, true); if (_transId > 0) { r = true; if (objParam != null) { _paramId = ProcessParam(objSn, objParam, _engageId); if (_paramId < 0) { r = false; } } } } if (!r) { RollBackTransaction(objSn, objSo, objParam, null); } return(r); }
public bool ProcessTransactionFail(ISnApi objSn, IParamApi objParam, IFailureApi objFailure) { var r = false; _transId = ProcessTransaction(objSn, objSn.SnDetail.id, false); if (_transId > 0) { var nextcode = objSn.ValidateNextCode(); if (nextcode != objSn.RouteDetail.next_pass) { OnTransactionProceed(objSn.ReturnMsg); } var performId = ProcessEngageUpdate(objSn, nextcode); if (performId > 0) { r = true; if (objParam != null) { var pId = ProcessParam(objSn, objParam, performId); if (pId < 0) { r = false; } } } } if (!r) { RollBackTransaction(objSn, null, objParam, objFailure); } return(r); }
private int ProcessParam(ISnApi objSn, IParamApi objParam, int performId) { var paramValue = objParam.GetParamItemValue(performId); if (!paramValue.Any()) { return(0); } var result = objParam.PerformParametric(paramValue, objSn.UnitSn); OnTransactionProceed(ReturnMsg); return(result); }
private void RollBackTransaction(ISnApi objSn, ISoApi objSo, IParamApi objParam, IFailureApi objFailure) { if (_paramId != 0) { RollBackParameter(objParam); } if (_failureId != 0) { RollBackFailure(objFailure); } if (_engageId != 0) { RollBackEngage(objSn, objSo); } if (_transId != 0) { RollBackTransaction(objSn); } }
private void RollBackParameter(IParamApi objParam) { }
public UcParam(IParamApi objParam, IControlBuilder objObjControlBuild) : base(objParam.GetFlexObj, objParam.GetWsObj, objParam.GetMsgObj, objParam.FormObject, objParam.Operation, objObjControlBuild) { ObjParam = objParam; InitializeComponent(); HookCustomEvent(this, ObjParam); }