private ICustomizeWidgetInstanceService service = CustomizeContext.Instance.CustomizeWidgetInstanceService; // 数据服务

        // -------------------------------------------------------
        // 保存 删除
        // -------------------------------------------------------

        #region 函数:Save(XmlDocument doc)
        /// <summary>保存记录</summary>
        /// <param name="doc">Xml 文档对象</param>
        /// <returns>返回操作结果</returns>
        public string Save(XmlDocument doc)
        {
            CustomizeWidgetInstanceInfo param = new CustomizeWidgetInstanceInfo();

            param = (CustomizeWidgetInstanceInfo)AjaxUtil.Deserialize(param, doc);

            service.Save(param);

            return(MessageObject.Stringify("0", I18n.Strings["msg_save_success"]));
        }
Example #2
0
        // -------------------------------------------------------
        // 查询
        // -------------------------------------------------------

        #region 函数:FindOne(string id)
        /// <summary>查询某条记录</summary>
        /// <param name="param">CustomizeWidgetInstanceInfo Id号</param>
        /// <returns>返回一个 CustomizeWidgetInstanceInfo 实例的详细信息</returns>
        public CustomizeWidgetInstanceInfo FindOne(string id)
        {
            Dictionary <string, object> args = new Dictionary <string, object>();

            args.Add("Id", id);

            CustomizeWidgetInstanceInfo param = this.ibatisMapper.QueryForObject <CustomizeWidgetInstanceInfo>(StringHelper.ToProcedurePrefix(string.Format("{0}_FindOne", tableName)), args);

            return(param);
        }
Example #3
0
        // -------------------------------------------------------
        // 保存 添加 修改 删除
        // -------------------------------------------------------

        #region 函数:Save(CustomizeWidgetInstanceInfo param)
        /// <summary>保存记录</summary>
        /// <param name="param">CustomizeWidgetInstanceInfo 实例详细信息</param>
        /// <returns>CustomizeWidgetInstanceInfo 实例详细信息</returns>
        public CustomizeWidgetInstanceInfo Save(CustomizeWidgetInstanceInfo param)
        {
            if (!IsExist(param.Id))
            {
                Insert(param);
            }
            else
            {
                Update(param);
            }

            return(param);
        }
Example #4
0
        private string RenderHtml(string xml)
        {
            XmlDocument doc = new XmlDocument();

            doc.LoadXml(xml);

            XmlNodeList nodes = doc.GetElementsByTagName("li");

            XmlElement element = null;

            XmlNodeList childNodes = null;

            XmlElement childElement = null;

            CustomizeWidgetInstanceInfo widgetInstance = null;

            for (int i = 0; i < nodes.Count; i++)
            {
                element = (XmlElement)nodes[i];

                if (element.GetAttribute("class").IndexOf("x-ui-pkg-customize-widget") > -1)
                {
                    widgetInstance = CustomizeContext.Instance.CustomizeWidgetInstanceService[element.GetAttribute("id")];

                    if (widgetInstance != null)
                    {
                        childNodes = element.ChildNodes;

                        foreach (XmlNode childNode in childNodes)
                        {
                            childElement = (XmlElement)childNode;

                            if (childElement.GetAttribute("class").IndexOf("x-ui-pkg-customize-widget-head") > -1)
                            {
                                if (widgetInstance.Widget != null && !string.IsNullOrEmpty(widgetInstance.Widget.Url))
                                {
                                    childElement.SetAttribute("style", "cursor:pointer;");
                                }
                            }

                            if (childElement.GetAttribute("class").IndexOf("x-ui-pkg-customize-widget-content") > -1)
                            {
                                childNode.InnerXml = widgetInstance.Html;
                            }
                        }
                    }
                }
            }

            return(doc.InnerXml);
        }
Example #5
0
        /// <summary>设置实例所在的页面和部件类型</summary>
        /// <param name="param">CustomizeWidgetInstanceInfo 实例详细信息</param>
        /// <param name="pageId">页面标识</param>
        /// <param name="widgetName">部件名称</param>
        /// <returns>部件实例信息</returns>
        public CustomizeWidgetInstanceInfo SetPageAndWidget(CustomizeWidgetInstanceInfo param, string pageId, string widgetName)
        {
            CustomizePageInfo page = CustomizeContext.Instance.CustomizePageService.FindOne(pageId);

            CustomizeWidgetInfo widget = CustomizeContext.Instance.CustomizeWidgetService.FindOneByName(widgetName);

            param.PageId = (page == null) ? string.Empty : page.Id;
            // param.PageName = pageId;

            param.WidgetId   = (widget == null) ? string.Empty : widget.Id;
            param.WidgetName = widgetName;

            return(param);
        }
        // -------------------------------------------------------
        // 查询
        // -------------------------------------------------------

        #region 函数:FindOne(XmlDocument doc)
        /// <summary>获取详细信息</summary>
        /// <param name="doc">Xml 文档对象</param>
        /// <returns>返回操作结果</returns>
        public string FindOne(XmlDocument doc)
        {
            StringBuilder outString = new StringBuilder();

            string id = XmlHelper.Fetch("id", doc);

            CustomizeWidgetInstanceInfo param = service.FindOne(id);

            outString.Append("{\"data\":" + AjaxUtil.Parse <CustomizeWidgetInstanceInfo>(param) + ",");

            outString.Append(MessageObject.Stringify("0", I18n.Strings["msg_query_success"], true) + "}");

            return(outString.ToString());
        }
        /// <summary>设置选项信息</summary>
        /// <param name="doc">Xml 文档对象</param>
        /// <returns>返回操作结果</returns>
        public string SetOptions(XmlDocument doc)
        {
            StringBuilder outString = new StringBuilder();

            string options = XmlHelper.Fetch("options", doc);

            string id = XmlHelper.Fetch("id", doc);

            CustomizeWidgetInstanceInfo param = this.service.FindOne(id);

            if (param == null)
            {
                return("{\"message\":{\"returnCode\":1,\"value\":\"未找到相关部件【" + id + "】实例。\"}}");
            }

            param.Options = options;

            this.service.Save(param);

            return("{\"message\":{\"returnCode\":0,\"value\":\"设置成功。\"}}");
        }
        /// <summary>获取属性编辑框HTML代码</summary>
        /// <param name="doc">Xml 文档对象</param>
        /// <returns>返回操作结果</returns>
        public string GetOptionHtml(XmlDocument doc)
        {
            StringBuilder outString = new StringBuilder();

            string id = XmlHelper.Fetch("id", doc);

            CustomizeWidgetInstanceInfo param = this.service.FindOne(id);

            if (param == null)
            {
                return("{\"message\":{\"returnCode\":1,\"value\":\"未找到相关部件【" + id + "】实例。\"}}");
            }

            string optionHtml = this.service.GetOptionHtml(id).Replace("${Id}", id);

            optionHtml = ParseHtml(optionHtml, param.Options);

            outString.Append("{\"data\":\"" + StringHelper.ToSafeJson(optionHtml) + "\",");

            outString.Append(MessageObject.Stringify("0", I18n.Strings["msg_query_success"], true) + "}");

            return(outString.ToString());
        }
        /// <summary>创建部件实例</summary>
        /// <param name="doc">Xml 文档对象</param>
        /// <returns>返回操作结果</returns>
        public string Create(XmlDocument doc)
        {
            StringBuilder outString = new StringBuilder();

            string id = XmlHelper.Fetch("id", doc);

            string pageId = XmlHelper.Fetch("pageId", doc);

            string widgetName = XmlHelper.Fetch("widgetName", doc);

            CustomizeWidgetInstanceInfo param = service.FindOne(id);

            if (param == null)
            {
                param = new CustomizeWidgetInstanceInfo();

                param = (CustomizeWidgetInstanceInfo)AjaxUtil.Deserialize(param, doc);

                this.service.SetPageAndWidget(param, pageId, widgetName);

                // 设置部件默认选项
                CustomizeWidgetInfo widget = CustomizeContext.Instance.CustomizeWidgetService.FindOneByName(widgetName);

                param.Height  = widget.Height;
                param.Width   = widget.Width;
                param.Options = widget.Options;

                this.service.Save(param);
            }

            outString.Append("{\"data\":" + AjaxUtil.Parse <CustomizeWidgetInstanceInfo>(param) + ",");

            outString.Append(MessageObject.Stringify("0", I18n.Strings["msg_create_success"], true) + "}");

            return(outString.ToString());
        }
Example #10
0
        // -------------------------------------------------------
        // 保存 删除
        // -------------------------------------------------------

        #region 函数:Save(CustomizeWidgetInstanceInfo param)
        /// <summary>保存记录</summary>
        /// <param name="param">CustomizeWidgetInstanceInfo 实例详细信息</param>
        /// <returns>CustomizeWidgetInstanceInfo 实例详细信息</returns>
        public CustomizeWidgetInstanceInfo Save(CustomizeWidgetInstanceInfo param)
        {
            return(this.provider.Save(param));
        }
Example #11
0
        /// <summary>获取属性编辑框Html文本</summary>
        /// <param name="id">标识</param>
        /// <returns>Html文本</returns>
        public string GetOptionHtml(string id)
        {
            CustomizeWidgetInstanceInfo param = this.FindOne(id);

            return(CustomizeContext.Instance.CustomizeWidgetService.GetOptionHtml(param.WidgetId));
        }
Example #12
0
 /// <summary>修改记录</summary>
 /// <param name="param">CustomizeWidgetInstanceInfo 实例的详细信息</param>
 public void Update(CustomizeWidgetInstanceInfo param)
 {
     this.ibatisMapper.Update(StringHelper.ToProcedurePrefix(string.Format("{0}_Update", tableName)), param);
 }