Esempio n. 1
0
        /// <summary>
        /// 根据PageName获取指定客户下的H5页面的路径
        /// </summary>
        /// <param name="pCustomerID"></param>
        /// <param name="pPageName"></param>
        /// <returns></returns>
        public string GetPagePathByPageName(string pCustomerID, string pPageName)
        {
            WeiXinH5ConfigEntity queryEntity = new WeiXinH5ConfigEntity();

            queryEntity.CustomerID = pCustomerID;
            queryEntity.IsDelete   = 0;
            var queryResult = this._currentDAO.QueryByEntity(queryEntity, null);
            //
            var configFilePath = string.Empty;

            if (queryResult != null && queryResult.Length > 0)
            {//找到属于该客户的H5页面配置记录
                configFilePath = queryResult[0].ConfigFilePath;
                if (configFilePath.StartsWith(@"\"))
                {
                    configFilePath = configFilePath.Substring(1);
                }
            }
            else
            {//如果数据库中没有指定配置,则按规则默认
                configFilePath = string.Format(@"\HtmlApps\config\{0}.js", pCustomerID);
            }
            if (!string.IsNullOrWhiteSpace(configFilePath))
            {
                var fullPath = AppDomain.CurrentDomain.BaseDirectory + configFilePath;
                if (File.Exists(fullPath))
                {                                                   //获取配置文件的路径
                    var configContent = File.ReadAllText(fullPath); //读取配置文件中的所有信息
                    var h5ConfigInfo  = H5ConfigInfo.Parse(configContent);
                    if (h5ConfigInfo != null && h5ConfigInfo.Pages != null && h5ConfigInfo.Pages.Count > 0)
                    {//解析JSON格式的配置文件内容,获取指定PageName的路径配置
                        foreach (var page in h5ConfigInfo.Pages)
                        {
                            if (page != null && page.Name == pPageName)
                            {
                                var path = page.Path;
                                if (h5ConfigInfo.Config != null && h5ConfigInfo.Config.Shorthand != null && h5ConfigInfo.Config.Shorthand.Count > 0)
                                {
                                    foreach (var item in h5ConfigInfo.Config.Shorthand)
                                    {
                                        path = path.Replace(string.Format("%{0}%", item.Key), item.Value);
                                    }
                                }
                                //返回H5页面路径
                                return(path);
                            }
                        }
                    }
                }
            }
            //
            return(string.Empty);
        }
Esempio n. 2
0
 /// <summary>
 /// 更新
 /// </summary>
 /// <param name="pEntity">实体实例</param>
 /// <param name="pTran">事务实例,可为null,如果为null,则不使用事务来更新</param>
 public void Update(WeiXinH5ConfigEntity pEntity, IDbTransaction pTran)
 {
     _currentDAO.Update(pEntity, pTran);
 }
Esempio n. 3
0
 /// <summary>
 /// 创建一个新实例
 /// </summary>
 /// <param name="pEntity">实体实例</param>
 public void Create(WeiXinH5ConfigEntity pEntity)
 {
     _currentDAO.Create(pEntity);
 }
Esempio n. 4
0
 /// <summary>
 /// 分页根据实体条件查询实体
 /// </summary>
 /// <param name="pQueryEntity">以实体形式传入的参数</param>
 /// <param name="pOrderBys">排序组合</param>
 /// <returns>符合条件的实体集</returns>
 public PagedQueryResult <WeiXinH5ConfigEntity> PagedQueryByEntity(WeiXinH5ConfigEntity pQueryEntity, OrderBy[] pOrderBys, int pPageSize, int pCurrentPageIndex)
 {
     return(_currentDAO.PagedQueryByEntity(pQueryEntity, pOrderBys, pPageSize, pCurrentPageIndex));
 }
Esempio n. 5
0
 /// <summary>
 /// 根据实体条件查询实体
 /// </summary>
 /// <param name="pQueryEntity">以实体形式传入的参数</param>
 /// <param name="pOrderBys">排序组合</param>
 /// <returns>符合条件的实体集</returns>
 public WeiXinH5ConfigEntity[] QueryByEntity(WeiXinH5ConfigEntity pQueryEntity, OrderBy[] pOrderBys)
 {
     return(_currentDAO.QueryByEntity(pQueryEntity, pOrderBys));
 }
Esempio n. 6
0
 /// <summary>
 /// 删除
 /// </summary>
 /// <param name="pEntity"></param>
 public void Delete(WeiXinH5ConfigEntity pEntity)
 {
     _currentDAO.Delete(pEntity);
 }
Esempio n. 7
0
 /// <summary>
 /// 更新
 /// </summary>
 /// <param name="pEntity">实体实例</param>
 public void Update(WeiXinH5ConfigEntity pEntity)
 {
     _currentDAO.Update(pEntity);
 }