示例#1
0
        /// <summary>
        /// 试乘试驾预约时段查询列表
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public string QueryReservationList(DriveReservationRequest request)
        {
            var filter = string.Empty;

            if (request.CarModelId != null)
            {
                filter += $"<condition attribute='mcs_carmodel' operator='eq' value='{request.CarModelId}' />";
            }
            if (request.ReservationDate != null)
            {
                filter += $"<condition attribute='mcs_reservationdate' operator='on' value='{request.ReservationDate}' />";
            }

            var fetchString = $@"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>
                  <entity name='mcs_reservationconfiguration'>
                    <all-attributes />
                    <order attribute='mcs_reservationdate' descending='true' />
                    <order attribute='mcs_begintime' descending='false' />
                    <filter type='and'>
                      <condition attribute='statecode' operator='eq' value='0' />
                      {filter}
                    </filter>
                  </entity>
                </fetch>";

            return(fetchString);
        }
示例#2
0
        /// <summary>
        /// 试乘试驾预约时段列表查询接口
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public async Task <QueryResult <CrmEntity> > QueryReservationList(DriveReservationRequest request)
        {
            var userInfo = ContextContainer.GetValue <UserInfo>(ContextExtensionTypes.CurrentUserInfo);

            if (userInfo != null && !string.IsNullOrWhiteSpace(userInfo.mcs_dealerid))
            {
                // request.DealerId = Guid.Parse(userInfo.mcs_dealerid);
            }
            #region 查询结果集
            var fetchString = _driveRecordRepository.QueryReservationList(request);

            var fetchXdoc    = XDocument.Parse(fetchString);
            var fetchRequest = new CrmRetrieveMultipleFetchRequestMessage()
            {
                EntityName  = "mcs_reservationconfiguration",
                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 = request.PageIndex;
            queryResult.TotalCount  = 0;
            return(queryResult);

            #endregion
        }
示例#3
0
        public async Task <NewtonsoftJsonActionResult <QueryResult <CrmEntity> > > QueryReservationList([FromQuery] DriveReservationRequest request)
        {
            var list = await app.QueryReservationList(request);

            return(list);
        }
示例#4
0
 /// <summary>
 /// 试乘试驾预约时段列表
 /// </summary>
 /// <param name="request"></param>
 /// <returns></returns>
 public async Task <QueryResult <CrmEntity> > QueryReservationList(DriveReservationRequest request)
 {
     return(await _driveRecordService.QueryReservationList(request));
 }