public async Task <ResultInfo> DeleteMarshal(string AdminID, string groupID, string marshalProfileID) { int GroupID = Convert.ToInt32(groupID); long MarshalProfileID = Convert.ToInt64(marshalProfileID); var result = new ResultInfo(); try { if (string.IsNullOrEmpty(AdminID) || GroupID == 0 || MarshalProfileID == 0) { result.ResultType = ResultTypeEnum.Error; result.Message = "Marshal Not Deleted.Invalid IDs !"; } else if (MarshalValidationsForBuddy(AdminID, GroupID, MarshalProfileID, 0, false)) { ProfileLiteList locateBuddies = await _LocationService.GetBuddiesToLocateByProfileID(marshalProfileID); if (locateBuddies == null || locateBuddies.List.Count == 0) { bool isMarshalDeleted = await _GroupRepository.DeleteMarshal(GroupID, MarshalProfileID); if (isMarshalDeleted) { result.ResultType = ResultTypeEnum.Success; result.Message = "Marshal Deleted"; } } else { result.ResultType = ResultTypeEnum.Error; result.Message = "Marshal can not be deleted As People have added him as a buddy"; } } else { result.ResultType = ResultTypeEnum.Error; result.Message = "Failed"; } } catch (Exception e) { result.ResultType = ResultTypeEnum.Exception; result.Message = "Failed-" + e.Message; } return(result); }