예제 #1
0
        /// <summary>
        /// 列表
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public async Task <QueryResult <CrmEntity> > getlist(VehnetworkListRequest request)
        {
            try
            {
                var fetchXdoc = _Repository.GetListFetchXml(request);

                var fetchRequest = new CrmRetrieveMultipleFetchRequestMessage()
                {
                    EntityName = "mcs_vehnetwork",
                    FetchXml   = fetchXdoc.Result
                };
                var fetchResponse = await _crmService.Execute(fetchRequest);

                var fetchResponseResult = fetchResponse as CrmRetrieveMultipleFetchResponseMessage;
                var queryResult         = new QueryResult <CrmEntity>();
                queryResult.Results     = fetchResponseResult.Value.Results;
                queryResult.CurrentPage = request.PageSize;
                queryResult.TotalCount  = 0;
                return(queryResult);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #2
0
        /// <summary>
        /// 列表获取
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public async Task <XDocument> GetListFetchXml(VehnetworkListRequest request)
        {
            return(await Task <XDocument> .Run(() =>
            {
                var filterStr = "";
                if (!string.IsNullOrEmpty(request.SearchKey))
                {
                    filterStr += $@"  <filter type='or'>
                    <condition attribute='mcs_code' operator='like' value='%{request.SearchKey}%' />
                    <condition attribute='mcs_invoicephone' operator='like' value='%{request.SearchKey}%' />
                    <condition attribute='mcs_invoiceidcode' operator='like' value='%{request.SearchKey}%' />
                    <condition attribute='mcs_invoicename' operator='like' value='%{request.SearchKey}%' />
                    </filter>/>
                    ";
                }
                if (!string.IsNullOrEmpty(request.Status))
                {
                    filterStr += " <condition attribute='mcs_tservicestatus' operator='eq' value='" + request.Status + "' />";
                }

                var fetchXml = $@"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'
                   count='{request.PageSize}' page='{request.PageIndex}'>
  <entity name='mcs_vehnetwork'>
  <attribute name='mcs_code' />
    <attribute name='createdon' />
    <attribute name='mcs_vehorder' />
    <attribute name='mcs_invoiceon' />
    <attribute name='mcs_invoicename' />
    <attribute name='mcs_opencardtime' />
    <attribute name='mcs_deliveryon' />
    <attribute name='mcs_vehdelivery' />
    <attribute name='mcs_vin' />
    <attribute name='mcs_tservicestatus' />
    <attribute name='mcs_dealer' />
    <attribute name='mcs_caruse' />
    <attribute name='mcs_vehnetworkid' />
    <order attribute='createdon' descending='true' />
    <filter type='and'>
      <condition attribute='statecode' operator='eq' value='0' />
      <condition attribute='mcs_dealer' operator='eq' value='{request.DealerId}' />
{filterStr}
    </filter> 
  </entity>
</fetch>";
                return XDocument.Parse(fetchXml);
            }));
        }
예제 #3
0
 public async Task <QueryResult <CrmEntity> > getlist(VehnetworkListRequest request)
 {
     return(await _service.getlist(request));
 }
예제 #4
0
 public async Task <NewtonsoftJsonActionResult <QueryResult <CrmEntity> > > getlist(VehnetworkListRequest request)
 {
     return(await _appVehnetwork.getlist(request));
 }