예제 #1
0
 /// <summary>
 /// 视图状态转换
 /// </summary>
 /// <param name="viewState">审核控件视图状态</param>
 public void GotoState(AuditFormViewState viewState)
 {
     switch (viewState)
     {
         case AuditFormViewState.AuditStart:
             {
                 IsShowAuditButtonPnl = false;
                 IsShowAuditTypePnl = true;
                 //IsShowList = true;
                 IsShowForm = false;
                 IsShowEndAuditPnl = false;
                 IsShowSelectAuditPersonPnl = false;
                 IsFixedFlow = true;
                 break;
             }
         case AuditFormViewState.FreeAuditStart:
             {
                 IsShowAuditButtonPnl = false;
                 IsShowAuditTypePnl = true;
                 //IsShowList = true;
                 IsShowForm = false;
                 IsShowEndAuditPnl = false;
                 IsShowSelectAuditPersonPnl = true;
                 IsFixedFlow = false;
                 break;
             }
         case AuditFormViewState.Auditing:
             {
                 IsShowAuditButtonPnl = true;
                 //IsShowList = true;
                 IsShowForm = true;
                 IsShowAuditTypePnl = false;
                 IsShowEndAuditPnl = false;
                 IsShowSelectAuditPersonPnl = false;
                 break;
             }
         case AuditFormViewState.FreeAuditing:
             {
                 IsShowAuditTypePnl = false;
                 IsShowAuditButtonPnl = true;
                 //IsShowList = true;
                 IsShowForm = true;
                 IsShowEndAuditPnl = true;
                 IsShowSelectAuditPersonPnl = true;
                 break;
             }
         case AuditFormViewState.End:
             {
                 IsShowAuditButtonPnl = false;
                 IsShowAuditTypePnl = false;
                 IsShowForm = false;
                 IsShowEndAuditPnl = false;
                 IsShowSelectAuditPersonPnl = false;
                 //IsShowList = true;
                 break;
             }
         default:
             {
                 TempPanel.Visibility = Visibility.Visible;
                 break;
             }
     }
 }
예제 #2
0
        /// <summary>
        /// 判断是否可能用自选流程或提单人可以撤回流程
        /// </summary>
        private void GetIsFreeFlowAndIsCancel(AuditFormViewState viewState)
        {
            SMT.Saas.Tools.FlowWFService.ServiceClient client = new ServiceClient();

            client.IsFreeFlowAndIsCancelAsync(AuditEntity.ModelCode, SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.UserPosts[0].CompanyID);
            client.IsFreeFlowAndIsCancelCompleted += (obj, e) =>
            {
                // 判断是否可能用自选流程或提单人可以撤回流程
                // string[0]=1 可以用自选流程
                // string[1]=1 提交人可以撤回流程,当前登录人=提单人才可以撤回,而且该单还是在审核中的
                if (e.Error == null)
                {
                    if (e.Result[0] == "1")
                    {
                        IsCanCancel = true;
                        //RdbAuditFree.Visibility = Visibility.Visible;
                        //EndAuditPnl.Visibility = Visibility.Visible;
                        //SelectAuditPersonPnl.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        IsCanCancel = false;
                        //RdbAuditFree.Visibility = Visibility.Collapsed;
                        //EndAuditPnl.Visibility = Visibility.Collapsed;
                        //SelectAuditPersonPnl.Visibility = Visibility.Collapsed; 
                    }
                    if (e.Result[1] == "1")
                    {
                        IsUserFreeFlow = true;
                    }
                    #region 是否使用自选流程
                    if (IsUserFreeFlow)
                    {//使用自选流程
                        GotoState(viewState);
                        //RdbAuditFree.Visibility = Visibility.Visible;
                        //EndAuditPnl.Visibility = Visibility.Visible;
                        //SelectAuditPersonPnl.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        //RdbAuditFree.Visibility = Visibility.Collapsed;
                        //EndAuditPnl.Visibility = Visibility.Collapsed;
                        //SelectAuditPersonPnl.Visibility = Visibility.Collapsed;
                        if (AuditFormViewState.AuditStart == viewState)
                        {
                            IsShowAuditButtonPnl = false;
                            IsShowAuditTypePnl = true;
                            //IsShowList = true;
                            IsShowForm = false;
                            IsShowEndAuditPnl = false;
                            IsShowSelectAuditPersonPnl = false;
                            IsFixedFlow = true;
                            RdbAuditFree.Visibility = Visibility.Collapsed;
                            EndAuditPnl.Visibility = Visibility.Collapsed;
                            SelectAuditPersonPnl.Visibility = Visibility.Collapsed;
                        }
                    }
                    #endregion
                }
            };
        }