Advertisement
vilgelmbb

isSigning_ItemClick Cetelem

Dec 9th, 2014
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.56 KB | None | 0 0
  1.     protected virtual void isSigning_ItemClick(object sender, ItemClickEventArgs e)
  2.         {  
  3.         var branch = StatesHelper.CanChangeState("Is signing", true);
  4.                 if (branch != null)
  5.                 {
  6.                     if (ObjectStateService.HasChangedObjects())
  7.                     {
  8.                         DialogResult dialogResult =
  9.                             Messages.QuestionMessage(
  10.                                 "Для перевода в \"На подписании\" необходимо сохранить документ. Сохранить сейчас?",
  11.                                 true);
  12.                         if (dialogResult != DialogResult.Yes)
  13.                         {
  14.                             return;
  15.                         }
  16.                         if (!SaveCard())
  17.                         {
  18.                             return;
  19.                         }
  20.                     }
  21.                     StatesHelper.ChangeCardState(branch);
  22.                     ActivateCommandsAndControls();
  23.                 }
  24.                 else
  25.                     UiService.ShowMessage("Нельзя сменить состояние" + Environment.NewLine +
  26.                                           "Информация для администратора:" + BaseObject.SystemInfo.State.LocalizedName +
  27.                                           "->" + "Is signing");
  28.     }
  29.  
  30.     public void ChangeCardState(StatesStateMachineBranch branch)
  31.         {
  32.             CardControl.ChangeState(branch);
  33.             if (BaseObject != null)
  34.             {
  35.                 ResetRolesCache(BaseObject, CardControl.ObjectContext.GetObjectRef(BaseObject).Id);
  36.             }
  37.             AccessCheckingService.ResetRolesCache();
  38.             CardFrame.Commit(ActionFlags.CommittedData);
  39.         }
  40.  
  41.     private void ResetRolesCache(BaseCard baseCardToReset, Guid cardIdToReset)
  42.         {
  43.             if (baseCardToReset == null)
  44.             {
  45.                 return;
  46.             }
  47.             if (cardIdToReset == Guid.Empty)
  48.             {
  49.                 return;
  50.             }
  51.             try
  52.             {
  53.                 CardControl.ObjectContext.GetService<IAccessCheckingService>().ResetRolesCache(baseCardToReset);
  54.                 CardControl.ObjectContext.GetService<IServerExtensionProxyService>().ResetRolesCache(cardIdToReset);
  55.             }
  56.             catch (Exception ex)
  57.             {
  58.             }
  59.         }
  60.  
  61.     private void ActivateCommandsAndControls()
  62.     {
  63.         if (ActivatedEventArgs.ActivateFlags.HasFlag(ActivateFlags.NewFromTemplate))
  64.             {
  65.  
  66.                 var author = Customizable.FindPropertyItem<IPropertyControl>("Author");
  67.                 if (author != null)
  68.                 {
  69.                     ControlsDictionary.SetControlValue("Author",
  70.                         MyContext.GetObjectRef(StaffService.GetCurrentEmployee()).Id);
  71.  
  72.                     var authorDepartment = Customizable.FindPropertyItem<ICustomPropertyItem>("AuthorDepartment");
  73.                     if (authorDepartment != null)
  74.                     {
  75.  
  76.                         if (StaffService.GetCurrentEmployee().Unit != null)
  77.                         {
  78.                             ControlsDictionary.SetControlValue("AuthorDepartment",
  79.                                 MyContext.GetObjectRef(StaffService.GetCurrentEmployee().Unit).Id);
  80.                             authorDepartment.ReadOnly = true;
  81.                             authorDepartment.PropertyControl.AllowEdit = false;
  82.                         }
  83.                     }
  84.                 }
  85.             }
  86.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement