public static object GetProperty(this Workpacket workpacket, string propertyName)
 {
     return(workpacket.WorklistAttributes.Properties
            .Where(p => p.Name == propertyName)
            .Select(p => p.Value)
            .FirstOrDefault());
 }
示例#2
0
        public async Task <ActionResult <Workpacket> > Search(string workpacketId)
        {
            Workpacket result = null;

            var p360loginResponse = await _p360AuthenticationService.LoginAsync(_p360LoginData.CurrentValue);

            try
            {
                result = await _workpacketSearchService.SearchAsync(p360loginResponse.SessionTokenHeader, workpacketId);
            }
            finally
            {
                var p360logoutResponse = await _p360AuthenticationService.LogoutAsync(p360loginResponse.SessionTokenHeader, _p360LoginData.CurrentValue);
            }
            return(result);
        }
        public async Task <ActionResult <Workpacket> > CreateAsync([FromBody] BaseForm workpacketCreateRequest)
        {
            Workpacket result = null;

            var p360loginResponse = await _p360AuthenticationService.LoginAsync(_p360LoginData.CurrentValue);

            try
            {
                result = await _workpacketCreationService.CreateAsync(p360loginResponse.SessionTokenHeader, workpacketCreateRequest);
            }
            finally
            {
                var p360logoutResponse = await _p360AuthenticationService.LogoutAsync(p360loginResponse.SessionTokenHeader, _p360LoginData.CurrentValue);
            }

            return(result);
        }
        public async Task <ActionResult <Workpacket> > UpdateWorkpacket(string workpacketId, [FromBody] CreateWPWithFormDataFilesRequest workpacketUpdateRequest)
        {
            Workpacket result = null;

            var p360loginResponse = await _p360AuthenticationService.LoginAsync(_p360LoginData.CurrentValue);

            try
            {
                var workpacketToUpdate = await _workpacketSearchService.SearchAllAsync(p360loginResponse.SessionTokenHeader, (null, workpacketId));

                P360WebReference.AttributeValidationError[] updateResult = null;
                if (workpacketToUpdate != null)
                {
                    updateResult = await _workpacketUpdateService.UpdateWorkpacketAsync(p360loginResponse.SessionTokenHeader, workpacketToUpdate.Id, workpacketUpdateRequest);
                }
            }
            finally
            {
                var p360logoutResponse = await _p360AuthenticationService.LogoutAsync(p360loginResponse.SessionTokenHeader, _p360LoginData.CurrentValue);
            }

            return(result);
        }
        public static T GetProperty <T>(this Workpacket workpacket, string propertyName)
        {
            var result = workpacket.GetProperty(propertyName);

            return((T)Convert.ChangeType(result, typeof(T)));
        }
示例#6
0
        public async Task <bool> CloseWorkpacketAsync(SessionTokenHeader sessionTokenHeader, Workpacket workpacket)
        {
            await Service.CloseWorkpacketAsync(sessionTokenHeader, workpacket.Id, true);

            return(true);
        }