public void send_upsertDepartment(Department department, Session session)
 #endif
 {
   oprot_.WriteMessageBegin(new TMessage("upsertDepartment", TMessageType.Call, seqid_));
   upsertDepartment_args args = new upsertDepartment_args();
   args.Department = department;
   args.Session = session;
   args.Write(oprot_);
   oprot_.WriteMessageEnd();
   #if SILVERLIGHT
   return oprot_.Transport.BeginFlush(callback, state);
   #else
   oprot_.Transport.Flush();
   #endif
 }
        public async Task<StatusData<DepartmentResponse>> UpsertDepartment(DepartmentRequest request, int mode, SystemSession session)
        {
            var serviceRequest = new Department
            {
                DepartmentId = request.DepartmentId,
                FromCompanyId = request.FromCompanyId,
                ToCompanyId = request.ToCompanyId,
                DepartmentName = request.DepartmentName,
                EmployeeIds = request.EmployeeIds,
                Mode = mode
            };
            var response = await Task.Factory.StartNew(() => Client.UserService.upsertDepartment(serviceRequest, session.GetSession())).ConfigureAwait(false);

            var result = new StatusData<DepartmentResponse> { Status = (SystemDbStatus)response.DbStatus.DbStatusCode, Message = response.DbStatus.DbStatusMsg, SubStatus = response.DbStatus.DbSubStatusCode };
            if (result.Status.IsOperationSuccessful())
            {
                result.Data = new DepartmentResponse
                {
                    DepartmentId = response.DepartmentId
                };
                // result.Data.DepartmentId = response.DepartmentId;
            }
            return result;
        }
 public IAsyncResult send_upsertDepartment(AsyncCallback callback, object state, Department department, Session session)
      public DepartmentResponse upsertDepartment(Department department, Session session)
      {
        #if !SILVERLIGHT
        send_upsertDepartment(department, session);
        return recv_upsertDepartment();

        #else
        var asyncResult = Begin_upsertDepartment(null, null, department, session);
        return End_upsertDepartment(asyncResult);

        #endif
      }
 public IAsyncResult Begin_upsertDepartment(AsyncCallback callback, object state, Department department, Session session)
 {
   return send_upsertDepartment(callback, state, department, session);
 }
 public void Read (TProtocol iprot)
 {
   TField field;
   iprot.ReadStructBegin();
   while (true)
   {
     field = iprot.ReadFieldBegin();
     if (field.Type == TType.Stop) { 
       break;
     }
     switch (field.ID)
     {
       case 0:
         if (field.Type == TType.List) {
           {
             Success = new List<Department>();
             TList _list228 = iprot.ReadListBegin();
             for( int _i229 = 0; _i229 < _list228.Count; ++_i229)
             {
               Department _elem230;
               _elem230 = new Department();
               _elem230.Read(iprot);
               Success.Add(_elem230);
             }
             iprot.ReadListEnd();
           }
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 1:
         if (field.Type == TType.Struct) {
           Ex = new UserException();
           Ex.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       case 2:
         if (field.Type == TType.Struct) {
           Se = new SessionException();
           Se.Read(iprot);
         } else { 
           TProtocolUtil.Skip(iprot, field.Type);
         }
         break;
       default: 
         TProtocolUtil.Skip(iprot, field.Type);
         break;
     }
     iprot.ReadFieldEnd();
   }
   iprot.ReadStructEnd();
 }
 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) {
           Department = new Department();
           Department.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();
 }