예제 #1
0
        /// <summary>
        /// 我的试乘试驾查询
        /// </summary>
        /// <param name="GetDriveRecordList"></param>
        /// <returns></returns>
        public async Task <QueryResult <CrmEntity> > GetDriveRecordList(TestDriveRequest Request)
        {
            try
            {
                var userInfo     = ContextContainer.GetValue <UserInfo>(ContextExtensionTypes.CurrentUserInfo);
                var ProxyUserId  = userInfo != null ? userInfo.systemuserid : null;
                var fetchString  = _Repository.GetDriveRecordList(Request);
                var fetchXdoc    = XDocument.Parse(fetchString);
                var fetchRequest = new CrmRetrieveMultipleFetchRequestMessage()
                {
                    EntityName  = "mcs_driverecord",
                    FetchXml    = fetchXdoc,
                    ProxyUserId = ProxyUserId
                };
                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);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #2
0
        /// <summary>
        /// 我的试乘试驾预约xml
        /// </summary>
        /// <param name="Request"></param>
        /// <returns></returns>
        public string GetDriveRecordList(TestDriveRequest Request)
        {
            var filter = string.Empty;

            //if (!string.IsNullOrWhiteSpace(vehorderRequest.SearchKey))
            //{
            //    filter += $"<filter type='or'>";
            //    filter += $"<condition attribute='mcs_contactname' operator='like' value='%{vehorderRequest.SearchKey}%' />";
            //    filter += $"<condition attribute='mcs_contactphone' operator='like' value='%{vehorderRequest.SearchKey}%' />";
            //    filter += $"<condition attribute='mcs_code' operator='like' value='%{vehorderRequest.SearchKey}%' />";
            //    filter += $"</filter>";
            //}
            if (!string.IsNullOrWhiteSpace(Request.mcs_driverecordid))
            {
                filter += $"<condition attribute='mcs_driverecordid' operator='eq' value='{Request.mcs_driverecordid}' />";
            }
            if (!string.IsNullOrWhiteSpace(Request.UserId))
            {
                filter += $"<condition attribute='mcs_userid' operator='eq' value='{Request.UserId}' />";
            }

            var fetchString = $@"<fetch version='1.0' count='{Request.PageSize}' page='{Request.PageIndex}' output-format='xml-platform' mapping='logical' distinct='false'>
                <entity name='mcs_driverecord'>
                <attribute name='mcs_driverecordid' />
                <attribute name='mcs_name' />
                <attribute name='mcs_fullname' />
                <attribute name='mcs_mobilephone' />
                <attribute name='mcs_carmodel' />
                <attribute name='mcs_businesstype' />
                <attribute name='mcs_dealerid' />
                <attribute name='mcs_ordertime' />
                <attribute name='mcs_testdrivetime' />
                <attribute name='mcs_drivestatus' />
                <order attribute='createdon' descending='true' />
                <filter type='and'>
                  <condition attribute='statecode' operator='eq' value='0' />              
                    {filter}
                </filter>
                <link-entity name='mcs_reservationconfiguration' from='mcs_reservationconfigurationid' to='mcs_testdrivetime' visible='false' link-type='outer' >
                  <attribute name='mcs_name' />
                </link-entity>
                <link-entity name='mcs_carmodel' from='mcs_carmodelid' to='mcs_carmodel' visible='false' link-type='outer' >
                  <attribute name='mcs_name' />
                </link-entity>
               <link-entity name='mcs_dealer' from='mcs_dealerid' to='mcs_dealerid' visible='false' link-type='outer' >
                <attribute name='mcs_name' />
               </link-entity>
              </entity>
            </fetch>";

            return(fetchString);
        }
예제 #3
0
        public Boolean TestDrive([FromBody] TestDriveRequest request)
        {
            if (!Directory.Exists(Settings.Default.BasePath + "/customer"))
            {
                Directory.CreateDirectory(Settings.Default.BasePath + "/customer");
            }
            var filepath = Settings.Default.BasePath + "/customer/testdrive.csv";

            if (!File.Exists(filepath))
            {
                File.Create(filepath);
            }
            File.AppendAllText(filepath, $"{request.FirstName},{request.LastName},{request.Email},{request.Zipcode}\n");
            return(true);
        }
예제 #4
0
 /// <summary>
 /// 我的试乘试驾查询
 /// </summary>
 /// <param name="request"></param>
 /// <returns></returns>
 public async Task <QueryResult <CrmEntity> > GetDriveRecordList(TestDriveRequest request)
 {
     return(await _testDriveService.GetDriveRecordList(request));
 }
예제 #5
0
        public async Task <NewtonsoftJsonActionResult <QueryResult <CrmEntity> > > GetDriveRecordList(TestDriveRequest request)
        {
            var list = await app.GetDriveRecordList(request);

            return(list);
        }