Exemplo n.º 1
0
        /// <summary>
        /// 获取预约时段配置记录
        /// </summary>
        /// <param name="appointmentConfiggRequest"></param>
        /// <returns></returns>
        public async Task <QueryResult <CrmEntity> > GetConfig(AppointmentConfigRequest appointmentConfiggRequest)
        {
            try
            {
                var userInfo = ContextContainer.GetValue <UserInfo>(ContextExtensionTypes.CurrentUserInfo);
                if (userInfo != null && !string.IsNullOrWhiteSpace(userInfo.mcs_dealerid))
                {
                    appointmentConfiggRequest.mcs_dealerid = Guid.Parse(userInfo.mcs_dealerid);
                }
                var fetchString = _appointmentInfoRepository.GetConfig(appointmentConfiggRequest);

                var fetchXdoc    = XDocument.Parse(fetchString);
                var fetchRequest = new CrmRetrieveMultipleFetchRequestMessage()
                {
                    EntityName = "mcs_appointmentconfig",
                    FetchXml   = fetchXdoc
                };
                var fetchResponse = await _crmService.Execute(fetchRequest);

                var fetchResponseResult = fetchResponse as CrmRetrieveMultipleFetchResponseMessage;

                var queryResult = new QueryResult <CrmEntity>();
                queryResult.Results     = fetchResponseResult.Value.Results;
                queryResult.CurrentPage = appointmentConfiggRequest.page;
                queryResult.TotalCount  = 0;

                return(queryResult);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 预约时段配置
        /// </summary>
        /// <param name="appointmentConfiggRequest"></param>
        /// <returns></returns>
        public string GetConfig(AppointmentConfigRequest configgRequest)
        {
            var filter = string.Empty;

            if (configgRequest.mcs_dealerid != Guid.Empty)
            {
                filter += $"<condition attribute='mcs_dealerid' operator='eq' value='{configgRequest.mcs_dealerid}' />";
            }
            if (configgRequest.mcs_servetype != null)
            {
                filter += $"<condition attribute='mcs_servetype' operator='eq' value='{configgRequest.mcs_servetype}' />";
            }
            if (configgRequest.mcs_servedate != null)
            {
                filter += $"<condition attribute='mcs_servedate' operator='on' value='{configgRequest.mcs_servedate}' />";
            }
            if (configgRequest.AppointmentConfigId != null)
            {
                filter += $"<condition attribute='mcs_appointmentconfigid' operator='eq' value='{configgRequest.AppointmentConfigId}' />";
            }
            var fetchString = $@"<fetch version='1.0' count='{configgRequest.pageSize}' page='{configgRequest.page}' output-format='xml-platform' mapping='logical' distinct='false'>
                                 <entity name='mcs_appointmentconfig'>
                                <attribute name='mcs_name' />
                                <attribute name='createdon' />
                                <attribute name='mcs_servetype' />
                                <attribute name='mcs_maxcapacity' />
                                <attribute name='mcs_servedate' />
                                <attribute name='mcs_starttimeframe' />
                                <attribute name='mcs_endtimeframe' />
                                <attribute name='mcs_alreadynum' />
                                <attribute name='mcs_arrivenum' />
                                <attribute name='mcs_dealerid' />
                                <attribute name='mcs_surplusnum' />
                                <attribute name='mcs_appointmentconfigid' />
                                <order attribute='mcs_name' descending='true' />
                                <filter type='and'>
                                  <condition attribute='statecode' operator='eq' value='0' />
                                  {filter}
                                </filter>
                              </entity>
                            </fetch>";

            return(fetchString);
        }
Exemplo n.º 3
0
 /// <summary>
 /// 获取预约时段列表
 /// </summary>
 /// <param name="appointmentConfiggRequest"></param>
 /// <returns></returns>
 public async Task<QueryResult<CrmEntity>> GetConfig(AppointmentConfigRequest appointmentConfiggRequest)
 {
     return await _appointmentInfoService.GetConfig(appointmentConfiggRequest);
 }
Exemplo n.º 4
0
        public async Task <NewtonsoftJsonActionResult <QueryResult <CrmEntity> > > GetConfig([FromQuery] AppointmentConfigRequest appointmentConfiggRequest)
        {
            var list = await app.GetConfig(appointmentConfiggRequest);

            return(list);
        }