/// <summary> /// 唯一线索列表查询 /// </summary> /// <param name="onlyLeadRequest"></param> /// <returns></returns> public async Task <QueryResult <CrmEntity> > QueryList(OnlyLeadRequest onlyLeadRequest) { try { var userInfo = ContextContainer.GetValue <UserInfo>(ContextExtensionTypes.CurrentUserInfo); var fetchString = _onlyLeadRepository.QueryList(onlyLeadRequest); var fetchXdoc = XDocument.Parse(fetchString); var fetchRequest = new CrmRetrieveMultipleFetchRequestMessage() { EntityName = "mcs_onlylead", FetchXml = fetchXdoc, ProxyUserId = userInfo?.systemuserid }; fetchRequest.Headers.Add(dicHeadKey, dicHead[dicHeadKey]); var fetchResponse = await _crmService.Execute(fetchRequest); var fetchResponseResult = fetchResponse as CrmRetrieveMultipleFetchResponseMessage; var queryResult = new QueryResult <CrmEntity>(); queryResult.Results = fetchResponseResult.Value.Results; queryResult.CurrentPage = onlyLeadRequest.PageIndex; queryResult.TotalCount = 0; return(queryResult); } catch (Exception ex) { throw ex; } }
public string QueryList(OnlyLeadRequest onlyLeadRequest) { var filter = string.Empty; if (!string.IsNullOrWhiteSpace(onlyLeadRequest.Search)) { filter += $"<filter type='or'>"; filter += $"<condition attribute='mcs_name' operator='like' value='%{onlyLeadRequest.Search}%' />"; filter += $"<condition attribute='mcs_userid' operator='like' value='%{onlyLeadRequest.Search}%' />"; filter += $"<condition attribute='mcs_mobilephone' operator='like' value='%{onlyLeadRequest.Search}%' />"; filter += $"<condition attribute='mcs_emailaddress1' operator='like' value='%{onlyLeadRequest.Search}%' />"; filter += $"</filter>"; } if (onlyLeadRequest.DealerId != null) { filter += $"<filter type='and'>"; filter += $"<condition attribute='mcs_dealerid' operator='eq' value='{onlyLeadRequest.DealerId}' />"; filter += $"</filter>"; } var fetchString = $@"<fetch version='1.0' count='{onlyLeadRequest.PageSize}' page='{onlyLeadRequest.PageIndex}' output-format='xml-platform' mapping='logical' distinct='false'> <entity name='mcs_onlylead'> <attribute name='mcs_name' /> <attribute name='createdon' /> <attribute name='mcs_dealerid' /> <attribute name='mcs_description' /> <attribute name='mcs_mobilephone' /> <attribute name='mcs_gender' /> <attribute name='mcs_excutestatus' /> <attribute name='mcs_emailaddress1' /> <attribute name='mcs_vehcolorid' /> <attribute name='mcs_vehtypeid' /> <attribute name='mcs_accountpoints' /> <attribute name='mcs_leadorigin' /> <attribute name='mcs_provinceid' /> <attribute name='mcs_cityid' /> <attribute name='mcs_countryid' /> <attribute name='mcs_districtid' /> <attribute name='mcs_intention' /> <attribute name='mcs_vehicleownerflag' /> <attribute name='mcs_driveapplication' /> <attribute name='mcs_mainowner' /> <attribute name='mcs_onlyleadid' /> <order attribute='createdon' descending='true' /> <filter type='and'> <condition attribute='statecode' operator='eq' value='0' /> {filter} </filter> </entity> </fetch>"; return(fetchString); }
public async Task <NewtonsoftJsonActionResult <QueryResult <CrmEntity> > > GetList([FromQuery] OnlyLeadRequest onlyLeadRequest) { var list = await app.QueryList(onlyLeadRequest); return(list); }
/// <summary> /// 唯一线索列表查询接口 /// </summary> /// <param name="onlyLeadRequest"></param> /// <returns></returns> public async Task <QueryResult <CrmEntity> > QueryList(OnlyLeadRequest onlyLeadRequest) { return(await _onlyLeadService.QueryList(onlyLeadRequest)); }