コード例 #1
0
        private bool AddNews()
        {
            if (string.IsNullOrEmpty(txtTenTin.Text) || string.IsNullOrEmpty(Content.Text))
            {
                ltrThongbao.Text = "Bắt buộc nhập tên tin và nội dung tin";
                return(false);
            }
            var info = new AdviceInfo();

            info.title          = txtTenTin.Text;
            info.adviceTypeName = drpNhomTin.SelectedItem.Text;
            info.adviceTypeId   = int.Parse(drpNhomTin.SelectedValue);
            info.content        = Content.Text;
            info.desseo         = txtMotaSeo.Text;
            info.description    = txtdesc.Text;
            var nextId = UntilityFunction.nextId("tbl_Advice");

            info.link       = Rewrite.GenDetail(info.adviceTypeName, info.adviceTypeId, nextId, info.title, Rewrite.ListPrice);
            info.altImage   = Server.HtmlEncode(info.title);
            info.tag        = txtkeyword.Text;
            info.CreateDate = DateTime.Now;
            info.action     = chkAction.Checked;
            if (upHinhanh.HasFile)
            {
                info.image = UploadImage(nextId);
            }
            ServiceFactory.GetInstanceAdvice().Add(info);

            return(true);
        }
コード例 #2
0
        protected string GetTitle(AdviceInfo advice)
        {
            if (advice == null)
            {
                return(String.Empty);
            }

            string url = String.Empty;

            if (Permisstions.Contains("Advice.Handle") && (advice.State == 2 || advice.State == 3 && advice.TypeID == TypeID))
            {
                url = "AdviceProcessEx.aspx";
            }
            else if (Permisstions.Contains("Advice.Accept") && (advice.State == 0))
            {
                url = "AdviceDistribute.aspx";
            }
            else if (Permisstions.Contains("Advice.Transfer") && (advice.State == 0))
            {
                url = "AdviceDistribute.aspx";
            }
            else if (Permisstions.Count > 0)
            {
                url = "AdviceView.aspx";
            }
            return(!String.IsNullOrEmpty(url) ? FormatUrl(url, advice) : advice.Title);
        }
コード例 #3
0
        private static bool Select(MethodBase targetMethod, AdviceInfo advice)
        {
            var reflectionName   = $"{targetMethod.DeclaringType.FullName}.{targetMethod.Name}";
            var memberAttributes = targetMethod.Attributes.ToMemberAttributes() | targetMethod.DeclaringType.Attributes.ToMemberAttributes();

            return(GetPointcutSelector(advice.Advice.GetType()).Select(reflectionName, memberAttributes));
        }
コード例 #4
0
 void AdviceEditorProvider_OnCommandComplete(object sender, We7.Model.Core.ModelEventArgs args)
 {
     if (!Encryption)
     {
         Alert("提交成功");
     }
     else if (txtPwd != null && mvAdvice != null)
     {
         mvAdvice.ActiveViewIndex = 1;
         string id = args.PanelContext.Row["ID"] as string;
         if (!String.IsNullOrEmpty(id))
         {
             AdviceInfo advice = helper.GetAdvice(id);
             lblPwd.Text = advice.MyQueryPwd;
             lblSN.Text  = advice.SN.ToString();
             AdviceID    = id;
         }
     }
     else if (lblSN != null)
     {
         mvAdvice.ActiveViewIndex = 1;
         string id = args.PanelContext.Row["ID"] as string;
         if (!String.IsNullOrEmpty(id))
         {
             AdviceInfo advice = helper.GetAdvice(id);
             lblSN.Text = advice.SN.ToString();
             AdviceID   = id;
         }
     }
     else
     {
         Alert("提交成功");
     }
 }
コード例 #5
0
        public AdviceInfo GetInfo(int id)
        {
            AdviceInfo info = null;

            SqlParameter[] param =
            {
                new SqlParameter("@id", id)
            };
            var r = DataHelper.ExecuteReader(Config.ConnectString, "usp_Advice_GetById", param);

            if (r != null)
            {
                info = new AdviceInfo();
                while (r.Read())
                {
                    info.id             = Int32.Parse(r["id"].ToString());
                    info.adviceTypeId   = Int32.Parse(r["adviceTypeId"].ToString());
                    info.adviceTypeName = r["adviceTypeName"].ToString();
                    info.title          = r["title"].ToString();
                    info.description    = r["description"].ToString();
                    info.content        = r["content"].ToString();
                    info.image          = r["image"].ToString();
                    info.altImage       = r["altImage"].ToString();
                    info.tag            = r["tag"].ToString();
                    info.CreateDate     = Convert.ToDateTime(r["CreateDate"]);
                    info.action         = Convert.ToBoolean(r["action"]);
                    info.link           = r["link"].ToString();
                    info.desseo         = r["desseo"].ToString();
                }
                r.Close();
                r.Dispose();
            }
            return(info);
        }
コード例 #6
0
        void bttnUpdate_Click(object sender, EventArgs e)
        {
            AdviceInfo a = helper.GetAdvice(AdviceID);

            a.MyQueryPwd = txtPwd.Text.Trim();
            helper.UpdateAdvice(a);
            Alert2("修改成功");
        }
コード例 #7
0
        private static bool Select(MethodBase targetMethod, AdviceInfo advice)
        {
            var reflectionName  = $"{targetMethod.DeclaringType.FullName}.{targetMethod.Name}";
            var visibilityScope = targetMethod.Attributes.ToVisibilityScope()
                                  | targetMethod.DeclaringType.GetInformationReader().Attributes.ToVisibilityScope();
            var memberKind = targetMethod.GetMemberKind();

            return(GetPointcutSelector(advice.Advice.GetType()).Select(reflectionName, visibilityScope, memberKind));
        }
コード例 #8
0
        public List <AdviceInfo> GetList(int pageIndex, int pageSize, out int total)
        {
            List <AdviceInfo> list = null;
            var t = 0;

            SqlParameter[] param =
            {
                new SqlParameter("@pageIndex", pageIndex),
                new SqlParameter("@pageSize",  pageSize),
                new SqlParameter("@totalrow",  DbType.Int32)
                {
                    Direction = ParameterDirection.Output
                }
            };
            SqlCommand comx;
            var        r = DataHelper.ExecuteReader(Config.ConnectString, "usp_Advice_GetList", param, out comx);

            if (r != null)
            {
                list = new List <AdviceInfo>();
                while (r.Read())
                {
                    var info = new AdviceInfo();
                    info.id             = Int32.Parse(r["id"].ToString());
                    info.adviceTypeId   = Int32.Parse(r["adviceTypeId"].ToString());
                    info.adviceTypeName = r["adviceTypeName"].ToString();
                    info.title          = r["title"].ToString();
                    info.description    = r["description"].ToString();
                    info.content        = r["content"].ToString();
                    info.image          = r["image"].ToString();
                    info.altImage       = r["altImage"].ToString();
                    info.tag            = r["tag"].ToString();
                    info.CreateDate     = Convert.ToDateTime(r["CreateDate"]);
                    info.action         = Convert.ToBoolean(r["action"]);
                    info.link           = r["link"].ToString();
                    info.desseo         = r["desseo"].ToString();


                    list.Add(info);
                }
                r.Close();
                r.Dispose();
                t = int.Parse(comx.Parameters[2].Value.ToString());
            }

            total = t;
            return(list);
        }
コード例 #9
0
        /// <summary>
        /// 添加记录过程
        /// </summary>
        /// <param name="url">文章url</param>
        protected void AddClick(string url)
        {
            //从URL获取文章SN
            string ArticleID = ArticleHelper.GetArticleIDFromURL(url);

            //string ArticleID = ArticleHelper.GetArticleIDBySN(SN);
            if (!string.IsNullOrEmpty(ArticleID))
            {
                //获取文章实体
                Article article = ArticleHelper.GetArticle(ArticleID);
                if (article != null)
                {
                    //保存日记录
                    ClickRecords cr = new ClickRecords();
                    cr.ObjectID   = article.ID;
                    cr.VisitDate  = ClickRecordHelper.ConvertIntegerFromDate(DateTime.Now);
                    cr.ObjectType = String.IsNullOrEmpty(article.ModelName)? "Article" :article.ModelName;
                    ClickRecordHelper.SaveClickRecord(cr);

                    //获取点击量报表
                    Dictionary <string, int> dictReports
                        = ClickRecordHelper.GetObjectClickReport(cr.ObjectType, article.ID);
                    //通过工厂获取具体的Helper
                    IObjectClickHelper helper = ClickHelperFactory.Create(article.ModelName);
                    helper.UpdateClicks(article.ModelName, article.ID, dictReports);
                }
                else
                {
                    AdviceInfo advice = AdviceFactory.Create().GetAdvice(ArticleID);
                    if (advice != null)
                    {
                        //保存日记录
                        ClickRecords cr = new ClickRecords();
                        cr.ObjectID   = advice.ID;
                        cr.VisitDate  = ClickRecordHelper.ConvertIntegerFromDate(DateTime.Now);
                        cr.ObjectType = "Advice";
                        ClickRecordHelper.SaveClickRecord(cr);

                        //获取点击量报表
                        Dictionary <string, int> dictReports
                            = ClickRecordHelper.GetObjectClickReport(cr.ObjectType, advice.ID);

                        IObjectClickHelper helper = ClickHelperFactory.Create(cr.ObjectType);
                        helper.UpdateClicks(cr.ObjectType, cr.ObjectID, dictReports);
                    }
                }
            }
        }
コード例 #10
0
ファイル: AdviceDataProviderEx.cs プロジェクト: jiaping/JPCMS
        public override bool Insert(We7.Model.Core.PanelContext data)
        {
            AdviceInfo advice = new AdviceInfo();

            advice.Title      = GetValue <string>(data, "Title");
            advice.UserID     = GetValue <string>(data, "UserID");
            advice.Content    = GetValue <string>(data, "Content");
            advice.Created    = DateTime.Now;
            advice.Name       = GetValue <string>(data, "Name");
            advice.Email      = GetValue <string>(data, "Email");
            advice.Address    = GetValue <string>(data, "Address");
            advice.Phone      = GetValue <string>(data, "Phone");
            advice.Fax        = GetValue <string>(data, "Fax");
            advice.RelationID = GetValue <string>(data, "RelationID");
            advice.State      = 0; //待受理
            int isshow;

            Int32.TryParse(GetValue <string>(data, "IsShow"), out isshow);
            advice.IsShow     = isshow;
            advice.Display1   = GetValue <string>(data, "Display1");
            advice.Display2   = GetValue <string>(data, "Display2");
            advice.Display3   = GetValue <string>(data, "Display3");
            advice.MyQueryPwd = We7Helper.CreateNewID().Substring(1, 8);

            //下面是添加模型信息
            string config, schema;

            advice.ModelXml    = GetModelDataXml(data, advice.ModelXml, out schema, out config);//获取模型数据
            advice.ModelConfig = config;
            advice.ModelName   = data.ModelName;
            advice.ModelSchema = schema;
            advice.TypeID      = data.Objects["AdviceTypeID"] as string;
            advice.Public      = GetValue <int>(data, "Public");
            AdviceFactory.Create().AddAdvice(advice);
            SetValue(data, "ID", advice.ID);

            try
            {
                AdviceHelper.SendNotifyMail(advice.ID);
            }
            catch { }
            finally { }
            return(true);
        }
コード例 #11
0
ファイル: AdviceDataProviderEx.cs プロジェクト: jiaping/JPCMS
        public override bool Update(We7.Model.Core.PanelContext data)
        {
            IAdviceHelper helper = AdviceFactory.Create();
            string        id     = GetValue <string>(data, "ID");
            AdviceInfo    advice = helper.GetAdvice(id);

            if (advice == null)
            {
                Insert(data);
            }
            else
            {
                advice.Title   = GetValue <string>(data, "Title");
                advice.UserID  = GetValue <string>(data, "UserID");
                advice.Content = GetValue <string>(data, "Content");
                advice.Name    = GetValue <string>(data, "Name");
                advice.Email   = GetValue <string>(data, "Email");
                advice.Address = GetValue <string>(data, "Address");
                advice.Phone   = GetValue <string>(data, "Phone");
                advice.Fax     = GetValue <string>(data, "Fax");
                advice.Public  = GetValue <int>(data, "Public");

                int isshow;
                Int32.TryParse(GetValue <string>(data, "IsShow"), out isshow);
                advice.IsShow = isshow;


                advice.Display1 = GetValue <string>(data, "Display1");
                advice.Display2 = GetValue <string>(data, "Display2");
                advice.Display3 = GetValue <string>(data, "Display3");

                //下面是添加模型信息
                string config, schema;
                advice.ModelXml    = GetModelDataXml(data, advice.ModelXml, out schema, out config);//获取模型数据
                advice.ModelConfig = config;
                advice.ModelName   = data.ModelName;
                advice.ModelSchema = schema;
                advice.TypeID      = data.Objects["AdviceTypeID"] as string;
                helper.UpdateAdvice(advice);
                SetValue(data, "ID", advice.ID);
            }
            return(true);
        }
コード例 #12
0
 public int Add(AdviceInfo info)
 {
     SqlParameter[] param =
     {
         new SqlParameter("@adviceTypeId",   info.adviceTypeId),
         new SqlParameter("@adviceTypeName", info.adviceTypeName),
         new SqlParameter("@title",          info.title),
         new SqlParameter("@description",    info.description),
         new SqlParameter("@content",        info.content),
         new SqlParameter("@image",          info.image),
         new SqlParameter("@altImage",       info.altImage),
         new SqlParameter("@tag",            info.tag),
         new SqlParameter("@CreateDate",     info.CreateDate),
         new SqlParameter("@action",         info.action),
         new SqlParameter("@link",           info.link),
         new SqlParameter("@desseo",         info.desseo)
     };
     return(int.Parse(DataHelper.ExecuteScalar(Config.ConnectString, "usp_Advice_Add", param).ToString()));
 }
コード例 #13
0
 /// <summary>
 /// Injects the introduced fields to advice.
 /// </summary>
 /// <param name="advice">The advice.</param>
 /// <param name="advisedType">Type of the advised.</param>
 /// <param name="introducedFields">The introduced fields.</param>
 private static void InjectIntroducedFields(IAdvice advice, Type advisedType, IList <MemberInfo> introducedFields)
 {
     if (introducedFields is null)
     {
         introducedFields = AdviceInfo.GetIntroducedFields(advice);
     }
     if (introducedFields.Count == 0)
     {
         return;
     }
     foreach (var memberInfo in introducedFields)
     {
         var memberValue = memberInfo.GetValue(advice);
         if (memberValue == null)
         {
             InjectIntroducedField(advice, memberInfo, advisedType);
         }
     }
 }
コード例 #14
0
 public int Update(AdviceInfo info)
 {
     SqlParameter[] param =
     {
         new SqlParameter("@id",             info.id)
         ,                                   new SqlParameter("@adviceTypeId",info.adviceTypeId),
         new SqlParameter("@adviceTypeName", info.adviceTypeName),
         new SqlParameter("@title",          info.title),
         new SqlParameter("@description",    info.description),
         new SqlParameter("@content",        info.content),
         new SqlParameter("@image",          info.image),
         new SqlParameter("@altImage",       info.altImage),
         new SqlParameter("@tag",            info.tag),
         new SqlParameter("@CreateDate",     info.CreateDate),
         new SqlParameter("@action",         info.action),
         new SqlParameter("@link",           info.link),
         new SqlParameter("@desseo",         info.desseo)
     };
     return(DataHelper.ExecuteNonQuery(Config.ConnectString, "usp_Advice_Update", param));
 }
コード例 #15
0
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            context.Response.Clear();
            context.Response.Expires = -1;

            string        pwd    = context.Request["pwd"];
            string        id     = context.Request["id"];
            IAdviceHelper helper = AdviceFactory.Create();
            AdviceInfo    advice = helper.GetAdvice(id);

            if (advice != null && advice.MyQueryPwd == pwd)
            {
                context.Response.Write("true");
            }
            else
            {
                context.Response.Write("false");
            }
        }
コード例 #16
0
ファイル: AdviceDataProviderEx.cs プロジェクト: jiaping/JPCMS
        public override System.Data.DataRow Get(We7.Model.Core.PanelContext data)
        {
            DataRow row = null;
            string  id  = data.DataKey["ID"] as string;

            if (!String.IsNullOrEmpty(id))
            {
                AdviceInfo advice = AdviceFactory.Create().GetAdvice(id);
                if (advice != null && !String.IsNullOrEmpty(advice.ModelXml))
                {
                    DataSet ds = CreateDataSet(data.Model);
                    ReadXml(ds, advice.ModelXml);
                    row = ds.Tables[0].Rows.Count > 0 ? ds.Tables[0].Rows[0] : null;
                    if (row != null)
                    {
                        row[OBJECTCOLUMN] = advice;
                    }
                }
            }
            return(row);
        }
コード例 #17
0
        public List <AdviceInfo> GetTop3Defaul()
        {
            List <AdviceInfo> list = null;
            var r = DataHelper.ExecuteReader(Config.ConnectString, "tuan_consult_gettop3", null);

            if (r != null)
            {
                list = new List <AdviceInfo>();
                while (r.Read())
                {
                    var info = new AdviceInfo();
                    info.title       = r["title"].ToString();
                    info.description = r["description"].ToString();
                    info.link        = r["link"].ToString();
                    list.Add(info);
                }
                r.Close();
                r.Dispose();
            }
            return(list);
        }
コード例 #18
0
ファイル: AdviceAccept.aspx.cs プロジェクト: jiaping/JPCMS
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         string id   = Request["id"];
         string type = Request["type"];
         if (!String.IsNullOrEmpty(id))
         {
             try
             {
                 IAdviceHelper helper = AdviceFactory.Create();
                 AdviceInfo    advice = helper.GetAdvice(id);
                 if (advice != null)
                 {
                     helper.UpdateAdviceState(id, 2);
                     ProccessMsg.Redirect(1, advice.TypeID, "受理成功!");
                 }
                 else
                 {
                     ProccessMsg.Redirect(0, advice.TypeID, "当前记录不存在!");
                 }
             }
             catch (System.Threading.ThreadAbortException ex)
             {
             }
             catch (Exception ex)
             {
                 ProccessMsg.Redirect(0, String.Empty, "应用程序错误!错误原因:" + ex.Message);
             }
         }
         else
         {
             ProccessMsg.Redirect(2, String.Empty, "当前记录不存在!");
         }
     }
 }
コード例 #19
0
ファイル: Invocation.cs プロジェクト: dougcunha/MrAdvice
 private static bool SelectAdvice(AdviceInfo adviceInfo, PointcutSelector rules)
 {
     return(rules.Select(adviceInfo.Advice.GetType().FullName, null, null));
 }
コード例 #20
0
 /// <summary>
 /// Injects the introduced fields.
 /// </summary>
 /// <param name="adviceInfo">The advice information.</param>
 /// <param name="advisedType">Type of the advised.</param>
 private static void InjectIntroducedFields(AdviceInfo adviceInfo, Type advisedType)
 {
     InjectIntroducedFields(adviceInfo.Advice, advisedType, adviceInfo.IntroducedFields);
 }
コード例 #21
0
 protected string FormatUrl(string url, AdviceInfo advice)
 {
     return(String.Format("<a href='{0}?id={1}&typeID={3}'>{2}</a>", url, advice.ID, advice.Title, Request["typeID"]));
 }