public async Task<IEnumerable<CompanyTreeViewResponse>> GetCompanyTree(CompanyTreeViewRequest request, SystemSession session)
        {
            var serviceRequest = new CompanyTree
            {
                UserId = session.UserId,
                IgnoreSisters = request.IgnoreSisters,
                ShowChildCompanyOnly = request.ShowChildCompaniesOnly
            };
            var response = await Task.Factory.StartNew(() => Client.UserService.getCompanyTree(serviceRequest, session.GetSession())).ConfigureAwait(false);

            var result = response.Select(x => new CompanyTreeViewResponse
            {
                UserId = x.UserId,
                ChildId = x.ChildId,
                Name = x.Name,
                Level = x.Level,
                IsRequestee = x.IsRequestee
            });
            return result;
        }
예제 #2
0
 public void send_getCompanyTree(CompanyTree companyTree, Session session)
 #endif
 {
   oprot_.WriteMessageBegin(new TMessage("getCompanyTree", TMessageType.Call, seqid_));
   getCompanyTree_args args = new getCompanyTree_args();
   args.CompanyTree = companyTree;
   args.Session = session;
   args.Write(oprot_);
   oprot_.WriteMessageEnd();
   #if SILVERLIGHT
   return oprot_.Transport.BeginFlush(callback, state);
   #else
   oprot_.Transport.Flush();
   #endif
 }
예제 #3
0
 public IAsyncResult send_getCompanyTree(AsyncCallback callback, object state, CompanyTree companyTree, Session session)
예제 #4
0
      public List<CompanyTreeResponse> getCompanyTree(CompanyTree companyTree, Session session)
      {
        #if !SILVERLIGHT
        send_getCompanyTree(companyTree, session);
        return recv_getCompanyTree();

        #else
        var asyncResult = Begin_getCompanyTree(null, null, companyTree, session);
        return End_getCompanyTree(asyncResult);

        #endif
      }
예제 #5
0
 public IAsyncResult Begin_getCompanyTree(AsyncCallback callback, object state, CompanyTree companyTree, Session session)
 {
   return send_getCompanyTree(callback, state, companyTree, session);
 }
예제 #6
0
 public void Read (TProtocol iprot)
 {
   TField field;
   iprot.ReadStructBegin();
   while (true)
   {
     field = iprot.ReadFieldBegin();
     if (field.Type == TType.Stop) { 
       break;
     }
     switch (field.ID)
     {
       case 1:
         if (field.Type == TType.Struct) {
           CompanyTree = new CompanyTree();
           CompanyTree.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 2:
         if (field.Type == TType.Struct) {
           Session = new Session();
           Session.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       default: 
         TProtocolUtil.Skip(iprot, field.Type);
         break;
     }
     iprot.ReadFieldEnd();
   }
   iprot.ReadStructEnd();
 }