Ejemplo n.º 1
0
    protected void CreateFont_Btn_Click(object sender, EventArgs e)
    {
        string  fontsrc = Font_DP.SelectedValue + ".ttf";
        string  tlp     = SafeSC.ReadFileStr("/WebFont/tlp.html");
        DataRow dr      = codeBll.NewModel();

        dr["Text"]     = StringHelper.SubStr(T1.Text, 500, "");
        dr["FlowCode"] = DateTime.Now.ToString("yyyyMMddHHmm") + function.GetRandomString(6);
        dr["CDate"]    = DateTime.Now;
        tlp            = tlp.Replace("{Text}", dr["Text"].ToString());
        string fontdir = "/WebFont/Users/" + dr["FlowCode"].ToString() + "/";

        dr["FontDir"] = function.VToP(fontdir);
        SafeSC.WriteFile(fontdir + "tlp.html", tlp);
        dr["ZStatus"] = 0;
        //1,将选定的字体拷入
        string src = "/WebFont/Fonts/" + fontsrc;
        string tar = fontdir + "pen.ttf";

        Copy(src, tar);
        int id = codeBll.Insert(dr);

        result_div.Visible     = true;
        result_t_div.InnerText = T1.Text;
        r_quote_t.Text         = GetQuote(dr["FlowCode"].ToString(), "pen");
        font_css.InnerHtml     = GetQuote(dr["FlowCode"].ToString(), "pen");
        //2,运行命令开始生成(命令行中已处理)
        //3,拷贝完成后回发指令,表示完成,客户端可预览或下载
        while (Response.IsClientConnected)
        {
            System.Threading.Thread.Sleep(1000);
            dr = codeBll.SelByID(id);
            if (dr["ZStatus"].ToString().Equals("1"))
            {
                break;
            }
        }
    }
Ejemplo n.º 2
0
        public void ProcessRequest(HttpContext context)
        {
            M_UserInfo mu = buser.GetLogin();

            retMod.retcode = M_APIResult.Failed;
            if (mu.IsNull)
            {
                retMod.retmsg = "用户未登录"; RepToClient(retMod);
            }
            int siteID = DataConvert.CLng(Req("SiteID"));

            //retMod.callback = CallBack;//暂不开放JsonP
            try
            {
                switch (Action)
                {
                case "mb_list":
                    #region
                {
                    string    fields = "wxico,wxsize,wxbk,flag,wxlink,content,dbtype";
                    DataTable dt     = GetListDT();
                    foreach (DataRow dr in dt.Rows)
                    {
                        M_CommonData conMod = conBll.SelReturnModel(Convert.ToInt32(dr["id"]));
                        //if (!conMod.Inputer.Equals(mu.UserName)) { continue; }
                        List <SqlParameter> sp1 = GetSPByDR(dr, "title");
                        List <SqlParameter> sp2 = GetSPByDR(dr, fields);
                        DBCenter.UpdateSQL("ZL_CommonModel", GetSet(sp1), "GeneralID=" + conMod.GeneralID, sp1);
                        DBCenter.UpdateSQL("ZL_C_Article", GetSet(sp2), "ID=" + conMod.ItemID, sp2);
                    }
                    retMod.retcode = M_APIResult.Success;
                }
                    #endregion
                    break;

                case "mb_nav":
                {
                    DataTable dt = GetListDT();
                    foreach (DataRow dr in dt.Rows)
                    {
                        M_CommonData conMod = conBll.SelReturnModel(Convert.ToInt32(dr["id"]));
                        //if (!conMod.Inputer.Equals(mu.UserName)) { continue; }
                        List <SqlParameter> sp1 = new List <SqlParameter>()
                        {
                            new SqlParameter("title", dr["title"].ToString())
                        };
                        List <SqlParameter> sp2 = new List <SqlParameter>()
                        {
                            new SqlParameter("wxico", dr["wxico"].ToString())
                        };
                        DBCenter.UpdateSQL("ZL_CommonModel", "Title=@title", "GeneralID=" + conMod.GeneralID, sp1);
                        DBCenter.UpdateSQL("ZL_C_Article", "wxico=@wxico", "ID=" + conMod.ItemID, sp2);
                    }
                    retMod.retcode = M_APIResult.Success;
                }
                break;

                case "mg_footbar":
                {
                    DataTable dt = GetListDT();
                    foreach (DataRow dr in dt.Rows)
                    {
                        M_CommonData conMod = conBll.SelReturnModel(Convert.ToInt32(dr["id"]));
                        //if (!conMod.Inputer.Equals(mu.UserName)) { continue; }
                        List <SqlParameter> sp1 = new List <SqlParameter>()
                        {
                            new SqlParameter("title", dr["title"].ToString())
                        };
                        List <SqlParameter> sp2 = new List <SqlParameter>()
                        {
                            new SqlParameter("wxico", dr["wxico"].ToString())
                        };
                        DBCenter.UpdateSQL("ZL_CommonModel", "Title=@title", "GeneralID=" + conMod.GeneralID, sp1);
                        DBCenter.UpdateSQL("ZL_C_Article", "wxico=@wxico", "ID=" + conMod.ItemID, sp2);
                    }
                    retMod.retcode = M_APIResult.Success;
                }
                break;

                case "mb_image":                  //更新单个内容的指定字段,是否需要扩展为,根据字段更新目标表,以减少代码
                {
                    string    flag = Req("flag"); //传了该值,则代表单条数据更新
                    DataTable dt   = GetListDT();
                    foreach (DataRow dr in dt.Rows)
                    {
                        List <SqlParameter> sp2 = new List <SqlParameter>()
                        {
                            new SqlParameter("wxico", dr["wxico"].ToString()),
                            new SqlParameter("flag", dr["flag"].ToString())
                        };
                        DBCenter.UpdateSQL("ZL_C_Article", "wxico=@wxico", "Flag=@flag", sp2);
                    }
                    retMod.retcode = M_APIResult.Success;
                }
                break;

                case "mb_byid":                                                        //主用于内容更新
                {
                    string    fields = "wxico,wxsize,wxbk,flag,wxlink,content,dbtype"; //dbtype
                    DataTable dt     = GetListDT();
                    foreach (DataRow dr in dt.Rows)
                    {
                        M_CommonData        conMod = conBll.SelReturnModel(Convert.ToInt32(dr["id"]));
                        List <SqlParameter> sp1    = GetSPByDR(dr, "title");
                        List <SqlParameter> sp2    = GetSPByDR(dr, fields);
                        DBCenter.UpdateSQL("ZL_CommonModel", GetSet(sp1), "GeneralID=" + conMod.GeneralID, sp1);
                        DBCenter.UpdateSQL("ZL_C_Article", GetSet(sp2), "ID=" + conMod.ItemID, sp2);
                    }
                    retMod.retcode = M_APIResult.Success;
                }
                break;

                case "mb_new":
                {
                    B_CodeModel codeBll  = new B_CodeModel("ZL_C_Article");
                    string      nodeName = Req("type").Equals("nav") ? "微站图片" : "微站内容";
                    DataTable   nodedt   = DBCenter.Sel("ZL_Node", "NodeBySite=" + siteID + " AND NodeName='" + nodeName + "'");
                    if (nodedt.Rows.Count < 1)
                    {
                        retMod.retmsg = nodeName + "节点不存在";
                    }
                    else
                    {
                        DataRow      dr     = GetListDT().Rows[0];
                        M_CommonData conMod = new M_CommonData();
                        DataRow      artdr  = codeBll.NewModel();
                        conMod.Title     = dr["title"].ToString();
                        conMod.Inputer   = mu.UserName;
                        conMod.Status    = (int)ZLEnum.ConStatus.Audited;
                        conMod.TableName = "ZL_C_Article";
                        conMod.ModelID   = 2;                                         //文章ID
                        conMod.NodeID    = Convert.ToInt32(nodedt.Rows[0]["NodeID"]); //放入微内容处
                                                                                      //-----------------------------
                        artdr["content"] = "ajax添加";
                        artdr["wxico"]   = dr["wxico"];
                        artdr["wxsize"]  = dr["wxsize"];
                        artdr["wxbk"]    = dr["wxbk"];
                        artdr["flag"]    = dr["flag"];
                        artdr["dbtype"]  = dr["dbtype"];
                        conMod.ItemID    = codeBll.Insert(artdr);
                        conMod.GeneralID = conBll.insert(conMod);
                        retMod.retcode   = M_APIResult.Success;
                        retMod.result    = conMod.GeneralID.ToString();
                    }
                }
                break;

                case "mb_del":
                {
                    int          id     = Convert.ToInt32(Req("id"));
                    M_CommonData conMod = conBll.SelReturnModel(id);
                    if (conMod == null)
                    {
                        retMod.retmsg = "内容[" + id + "]不存在";
                    }
                    else if (!conMod.Inputer.Equals(mu.UserName))
                    {
                        retMod.retmsg = "你无权删除[" + id + "]内容";
                    }
                    else
                    {
                        conBll.SetDel(conMod.GeneralID);
                        retMod.retcode = M_APIResult.Success;
                    }
                }
                break;

                case "mb_pro_update":    //新建,或更新
                {
                    DataRow   dr     = GetListDT().Rows[0];
                    M_Product proMod = new M_Product();
                    if (DataConvert.CLng(dr["id"]) > 0)
                    {
                        int id = Convert.ToInt32(dr["id"]);
                        proMod = proBll.GetproductByid(id);
                        if (proMod == null)
                        {
                            retMod.retmsg = "商品[" + id + "]不存在"; RepToClient(retMod);
                        }
                        else if (proMod.UserID != mu.UserID)
                        {
                            retMod.retmsg = "无权修改[" + id + "]商品"; RepToClient(retMod);
                        }
                    }
                    proMod.Proname    = dr["proname"].ToString();
                    proMod.ActPrice   = dr["price"].ToString();
                    proMod.LinPrice   = DataConvert.CDouble(dr["price"]);
                    proMod.UserID     = mu.UserID;
                    proMod.AddUser    = mu.UserName;
                    proMod.Nodeid     = B_Design_MBSite.UserShopNodeID;
                    proMod.ParentID   = siteID;
                    proMod.Proinfo    = dr["proinfo"].ToString();
                    proMod.Procontent = dr["content"].ToString();
                    proMod.Clearimg   = dr["pics"].ToString();
                    proMod.Thumbnails = proMod.Clearimg;
                    if (proMod.ID > 0)
                    {
                        proBll.updateinfo(proMod);
                    }
                    else
                    {
                        proMod.ID = proBll.Insert(proMod);
                    }
                    retMod.retmsg  = proMod.ID.ToString();
                    retMod.retcode = M_APIResult.Success;
                }
                break;

                case "mb_pro_del":
                {
                    int       id     = Convert.ToInt32(Req("id"));
                    M_Product proMod = proBll.GetproductByid(id);
                    if (proMod == null)
                    {
                        retMod.retmsg = "商品[" + id + "]不存在";
                    }
                    else if (proMod.UserID != mu.UserID)
                    {
                        retMod.retmsg = "你无权删除[" + id + "]商品";
                    }
                    else
                    {
                        proBll.RealDelByIDS(id.ToString());
                        retMod.retcode = M_APIResult.Success;
                    }
                }
                break;

                default:
                    retMod.retmsg = "[" + Action + "]接口不存在";
                    break;
                }
            }
            catch (Exception ex) { retMod.retmsg = ex.Message; retMod.retcode = M_APIResult.Failed; }
            RepToClient(retMod);
        }
Ejemplo n.º 3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Pid <= 0)
            {
                function.WriteErrMsg("参数错误!不存在此信息!");
            }
            M_Pub mpub = pubBll.GetSelect(Pid);

            mu = buser.GetLogin();
            if (mpub == null || mpub.Pubid < 1)
            {
                function.WriteErrMsg("互动信息不存在");
            }

            M_APIResult retMod = new M_APIResult();
            int         spid   = DataConvert.CLng(Request.Form["spfbrid"]);

            if (mu.UserID < 1)
            {
                retMod.retmsg = "未登录不可提交订单"; RepToClient(retMod.ToString()); return;
            }
            if (spid < 1)
            {
                retMod.retmsg = "未指定教师信息"; RepToClient(retMod.ToString()); return;
            }
            {
                //如果存在与该老师的进行中订单,则忽略
                string where = "xsrid=" + mu.UserID + " AND spfbrid=" + spid;
                where       += " AND status_order>=0 AND status_order<100";
                if (DBCenter.IsExist("ZL_Pub_dsmx", where))
                {
                    retMod.retmsg = "已存在生效中的订单";
                    RepToClient(retMod.ToString());
                    return;
                }
            }
            M_UserInfo spmu = buser.SelReturnModel(spid);

            if (spmu.IsNull)
            {
                retMod.retmsg = "老师信息不存在"; RepToClient(retMod.ToString()); return;
            }
            //-----------------------获取用户提交的数据
            //隐藏字段值
            int PubContentid = DataConverter.CLng(Request.Form["PubContentid"]);
            int Parentid     = DataConvert.CLng(Request.Form["Parentid"]);
            //用户提交
            string pbtitle   = Server.HtmlEncode(DataConvert.CStr(Request.Form["PubTitle"]));
            string pbcontent = Server.HtmlEncode(DataConvert.CStr(Request.Form["PubContent"]));

            if (!pbtitle.Contains("的"))//xxx的课程
            {
                pbtitle = B_User.GetUserName(spmu.HoneyName, spmu.UserName) + "的课程";
            }
            //-----------------------可提交判断
            List <SqlParameter> sp = new List <SqlParameter>();
            //-----------------------初始化参数
            //删除超过保留期限的值
            //pubBll.DeleteModel(mpub.PubTableName, "DateDiff(d,PubAddTime,getdate())>" + mpub.Pubkeep);
            //ModelField表中仅存了自定义的字段
            B_CodeModel codeBll = new B_CodeModel(mpub.PubTableName);
            DataRow     dr      = codeBll.NewModel();
            DataTable   mfDT    = mfBll.DB_SelByModel(mpub.PubModelID);

            mfDT.DefaultView.RowFilter = "sys_type=0";
            mfDT = mfDT.DefaultView.ToTable();
            //-----固定的系统字段
            dr["Pubnum"]       = 1;
            dr["PubIP"]        = EnviorHelper.GetUserIP();
            dr["PubUserID"]    = mu.UserID;
            dr["PubUserName"]  = mu.UserName;
            dr["Pubupid"]      = mpub.Pubid;
            dr["PubAddTime"]   = DateTime.Now;
            dr["Parentid"]     = Parentid;
            dr["PubTitle"]     = pbtitle;
            dr["PubContent"]   = pbcontent;
            dr["Pubstart"]     = mpub.PubIsTrue == 1 ? 0 : 1;//取反
            dr["PubInputer"]   = B_User.GetUserName(mu.HoneyName, mu.UserName);
            dr["PubContentid"] = PubContentid;
            //dr["cookflag"] = CookFlag;
            //=========订单初始化
            dr["status_order"]   = 0;
            dr["status_user"]    = 0;
            dr["status_teacher"] = 0;
            dr["status_money"]   = 0;
            dr["edate"]          = "";
            dr["fcAmount"]       = 0;
            dr["fcDate"]         = "";

            //int djid = DataConvert.CLng(mu.ParentUserID);
            //if (djid < 1) { djid = DataConvert.CLng(Request["djid"]); }
            dr["djid"] = DataConvert.CLng(Request["djid"]);

            //------非系统字段
            for (int i = 0; i < mfDT.Rows.Count; i++)
            {
                M_ModelField mfMod = new M_ModelField().GetModelFromReader(mfDT.Rows[i]);
                string       value = Server.HtmlEncode(Request.Form[mfMod.FieldName] ?? "");
                Parentid = DataConvert.CLng(Request.Form["Parentid"]);
                if (mfMod.IsNotNull && string.IsNullOrEmpty(value))
                {
                    RepToClient(mfMod.FieldName + "不能为空");
                }
                dr[mfMod.FieldName] = value;
                switch (mpub.PubType)
                {
                    #region 根据互动类型,进行空值判断
                case 0:
                    if (string.IsNullOrEmpty(pbcontent))
                    {
                        RepToClient("评论内容不能为空!");
                    }
                    break;

                case 1:
                    if (string.IsNullOrEmpty(pbtitle))
                    {
                        RepToClient("标题不能为空!");
                    }
                    break;

                case 2:
                    if (string.IsNullOrEmpty(pbtitle))
                    {
                        RepToClient("标题不能为空!");
                    }
                    if (string.IsNullOrEmpty(pbcontent))
                    {
                        RepToClient("活动信息不能为空!");
                    }
                    break;

                case 3:
                    if (string.IsNullOrEmpty(pbtitle) || string.IsNullOrEmpty(pbcontent))
                    {
                        RepToClient("标题与内容不能为空!");
                    }
                    break;

                case 4:
                    if (string.IsNullOrEmpty(pbtitle))
                    {
                        RepToClient("标题不能为空!");
                    }
                    break;

                case 5:
                    break;

                case 7:    //将评星控件的数据写入数据表中
                    dr["PubContent"] = Request.Params["scoreVal"];
                    break;

                case 8:    //互动表单
                    break;
                    #endregion
                }
            }
            codeBll.Insert(dr);
            retMod.retcode = M_APIResult.Success;
            RepToClient(retMod.ToString());
            //Upaddnums(mpub); //更新总参与人数
        }
        protected void Add_Btn_Click(object sender, EventArgs e)
        {
            M_CommonData CData    = new M_CommonData();
            M_AdminInfo  adminMod = B_Admin.GetLogin();
            M_ModelInfo  model    = modelBll.SelReturnModel(ModelID);

            artBll = new B_CodeModel(model.TableName);
            if (GeneralID > 0)
            {
                CData = conBll.SelReturnModel(GeneralID);
            }
            else
            {
                CData.NodeID    = NodeID;
                CData.ModelID   = ModelID;
                CData.TableName = model.TableName;
                CData.Inputer   = adminMod.AdminName;
                string parentTree = "";
                CData.FirstNodeID = nodeBll.SelFirstNodeID(NodeID, ref parentTree);
                CData.ParentTree  = parentTree;
            }
            //------------------------
            CData.Title = Title_T.Text.Trim();
            switch ((sender as Button).CommandArgument)
            {
            case "add":
                CData.Status = (int)ZLEnum.ConStatus.Audited;
                break;

            case "draft":
                CData.Status = (int)ZLEnum.ConStatus.Draft;
                break;

            default:
                break;
            }
            if (GeneralID > 0)
            {
                DataRow dr = artBll.SelByID(CData.ItemID);
                dr["Content"] = content_t.Text;
                artBll.UpdateByID(dr, "ID");
                conBll.UpdateByID(CData);
            }
            else
            {
                DataRow dr = artBll.NewModel();
                dr["Content"]   = content_t.Text;
                CData.ItemID    = artBll.Insert(dr);
                CData.GeneralID = conBll.insert(CData);
            }
            //----------------同步版权印
            double       repPrice = DataConverter.CDouble(RepPrice_T.Text.Trim());
            double       matPrice = DataConverter.CDouble(MatPrice_T.Text.Trim());
            string       content  = StringHelper.StripHtml(content_t.Text);
            M_Content_CR crMod    = crBll.CreateFromContent(CData, content, repPrice, matPrice);

            string  result = copyBll.Create(crMod);
            JObject obj    = JsonConvert.DeserializeObject <JObject>(result);

            crMod.Status  = DataConverter.CLng(obj["value"]);
            crMod.WorksID = obj["data"].ToString();
            crBll.Insert(crMod);
            if (crMod.Status == 1)
            {
                function.WriteSuccessMsg("操作成功,文章编号为:" + crMod.WorksID, "WorksList.aspx");
            }
            else
            {
                function.WriteErrMsg("操作失败:" + obj["msg"]);
            }
        }
Ejemplo n.º 5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (function.isAjax())
            {
                ProcAjax();
            }
            if (Pid <= 0)
            {
                function.WriteErrMsg("参数错误!不存在此信息!");
            }
            M_Pub mpub = pubBll.GetSelect(Pid);

            if (mpub != null && mpub.Pubid > 0)
            {
                #region 是否需要登录PubLogin
                if (mpub.PubLogin == 1)
                {
                    string logstr = mpub.PubLoginUrl;
                    if (!buser.CheckLogin())
                    {
                        if (string.IsNullOrEmpty(logstr))
                        {
                            Response.Redirect("/User/Login?ReturnUrl=" + Request.UrlReferrer.PathAndQuery);
                        }
                        else
                        {
                            Response.Redirect(logstr);
                        }
                        Response.End();
                    }
                }
                #endregion
                #region 是否已经结束
                if (mpub.PubEndTime < DateTime.Now)
                {
                    function.WriteErrMsg("Sorry,此互动已经结束!不接收任何提交的数据!");
                    Response.End();
                }
                #endregion
                string cookflag     = Request.Cookies["cookflag"] == null ? "" : Request.Cookies["cookflag"].Value;
                string PubInputer   = Request.Form["PubInputer"];
                int    PubContentid = DataConverter.CLng(Request.Form["PubContentid"]);
                //初始化参数
                int pubitemid = 0;
                int Pubnum = 0;
                int Parentid = 0;
                int userid = 0; string username = "";
                //IP可发信息数量
                int pubipnum = mpub.PubIPOneOrMore;
                //是否需要审核
                bool isinto = false;
                //用户提交
                string pbtitle   = Server.HtmlEncode(Request.Form["PubTitle"]);
                string pbcontent = Server.HtmlEncode(Request.Form["PubContent"]);
                //-----------------------------------------------------------------
                if (mpub.PubCode == 1)
                {
                    if (!ZoomlaSecurityCenter.VCodeCheck(Request.Form["VCode_hid"], Request.Form["VCode"]))
                    {
                        Response.Write("<script>alert('验证码错误!');window.history.go(-1);</script>");
                        Response.Flush();
                        Response.End();
                    }
                }
                if (buser.CheckLogin())
                {
                    M_UserInfo mu = buser.GetLogin();
                    userid   = mu.UserID;
                    username = mu.UserName;
                }
                //查找是否存在主题
                DataTable temptable = mfBll.SelectTableName(mpub.PubTableName, "PubContentid=" + PubContentid + " and Pubupid=" + Pid + " and Parentid=0");
                //同IP的同一篇文章回复次数
                int msgCount = pubBll.SelMsgCount(mpub, PubContentid, mpub.Pubid, EnviorHelper.GetUserIP());
                //最后回复时间
                DataTable selecttime = mfBll.SelectTableName(mpub.PubTableName, "PubContentid=" + PubContentid + " and Pubupid=" + Pid + " and PubIP='" + EnviorHelper.GetUserIP() + "' order by id desc");
                //判断是否存在,获得数据的值
                if (temptable.Rows.Count > 0)
                {
                    pubitemid = DataConverter.CLng(temptable.Rows[0]["ID"]);
                    Pubnum    = DataConverter.CLng(temptable.Rows[0]["Pubnum"]);
                }
                //删除超过保留期限的值
                pubBll.DeleteModel(mpub.PubTableName, "DateDiff(d,PubAddTime,getdate())>" + mpub.Pubkeep);
                switch (pubipnum)
                {
                case 0:
                    Parentid = 0;
                    isinto   = true;
                    break;

                case 1:    //Only One
                    Parentid = temptable.Rows.Count == 0 ? 0 : Parentid = DataConverter.CLng(temptable.Rows[0]["ID"]);
                    isinto   = msgCount < 1;
                    break;

                default:
                    Parentid = temptable.Rows.Count == 0 ? 0 : Parentid = DataConverter.CLng(temptable.Rows[0]["ID"]);
                    isinto   = msgCount < pubipnum;
                    break;
                }
                //开启cookies身份判断(主用于移动端例如微信浏览器)
                if (isinto && mpub.PubFlag == 1 && Request.Cookies["cookflag"] != null)
                {
                    if (string.IsNullOrEmpty(cookflag))
                    {
                        function.WriteErrMsg("身份信息不正确,无法参与互动!");
                    }
                    SqlParameter[] sp        = new SqlParameter[] { new SqlParameter("cookflag", cookflag) };
                    string         sql       = " cookflag=@cookflag";
                    DataTable      pubinfoDT = mfBll.SelectTableName(mpub.PubTableName, sql, sp);
                    if (pubinfoDT.Rows.Count >= mpub.PubTimeSlot)
                    {
                        function.WriteErrMsg("很抱歉,每人只能提交" + mpub.PubFlag + "次");
                        isinto = false;
                    }
                }
                //用户信息数量限制
                if (isinto && mpub.PubOneOrMore > 0 && !string.IsNullOrEmpty(username))
                {
                    SqlParameter[] sp2       = new SqlParameter[] { new SqlParameter("uname", username) };
                    string         sql2      = "PubContentid=" + PubContentid + " and Pubupid=" + mpub.Pubid + " and PubUserName=@uname order by id desc";
                    DataTable      pubinfoDT = mfBll.SelectTableName(mpub.PubTableName, sql2, sp2);
                    if (mpub.PubOneOrMore == 3)
                    {
                        if (pubinfoDT.Select("PubUserID=" + userid).Length > 1)
                        {
                            function.WriteErrMsg("很抱歉,对于此次互动,您只能参与一次!");
                        }
                    }
                    isinto = pubinfoDT.Rows.Count < mpub.PubOneOrMore;
                }
                if (!isinto)//不符合添加条件
                {
                    if (!string.IsNullOrEmpty(mpub.Puberrmsg))
                    {
                        Response.Write("<script>alert('" + mpub.Puberrmsg + "');window.history.go(-1);</script>");
                    }
                    else
                    {
                        Response.Write("<script>window.history.go(-1);</script>");
                    }
                    Response.End();
                    return;
                }
                DateTime PubAddTimes = DateTime.MinValue;
                if (selecttime.Rows.Count > 0 && Parentid > 0)
                {
                    PubAddTimes = DataConverter.CDate(selecttime.Rows[0]["PubAddTime"]);
                }
                //TimeSpan timespan = DateTime.Now - PubAddTimes;//时间间隔,用于限定用户第二次提交限制
                //double TotalSecondsnum = timespan.TotalSeconds;
                //ModelField表中仅存了自定义的字段
                B_CodeModel codeBll = new B_CodeModel(mpub.PubTableName);
                DataRow     dr      = codeBll.NewModel();
                DataTable   mfDT    = mfBll.DB_SelByModel(mpub.PubModelID);
                mfDT.DefaultView.RowFilter = "sys_type=0";
                mfDT = mfDT.DefaultView.ToTable();
                //-----固定的系统字段
                dr["Pubnum"]       = 1;
                dr["PubIP"]        = EnviorHelper.GetUserIP();
                dr["PubUserID"]    = userid;
                dr["PubUserName"]  = username;
                dr["Pubupid"]      = mpub.Pubid;
                dr["PubAddTime"]   = DateTime.Now;
                dr["Parentid"]     = DataConvert.CLng(Request.Form["Parentid"]);
                dr["PubTitle"]     = pbtitle;
                dr["PubContent"]   = pbcontent;
                dr["Pubstart"]     = mpub.PubIsTrue == 1 ? 0 : 1;//取反
                dr["PubInputer"]   = PubInputer;
                dr["PubContentid"] = PubContentid;
                //dr["Mood"] = Request.Form["Mood"];
                if (dr.Table.Columns.Contains("cookflag"))
                {
                    dr["cookflag"] = cookflag;
                }
                //------非系统字段
                for (int i = 0; i < mfDT.Rows.Count; i++)
                {
                    M_ModelField mfMod = new M_ModelField().GetModelFromReader(mfDT.Rows[i]);
                    string       value = Server.HtmlEncode(Request.Form[mfMod.FieldName] ?? "");
                    Parentid = DataConvert.CLng(Request.Form["Parentid"]);
                    if (mfMod.IsNotNull && string.IsNullOrEmpty(value))
                    {
                        Response.Write("<script>alert('" + mfMod.FieldName + "不能为空!');window.history.go(-1);</script>");
                        Response.End();
                    }
                    dr[mfMod.FieldName] = value;
                    switch (mpub.PubType)
                    {
                        #region 根据互动类型,进行空值判断
                    case 0:
                        if (string.IsNullOrEmpty(pbcontent))
                        {
                            Response.Write("<script>alert('评论内容不能为空!');window.history.go(-1);</script>");
                            Response.End();
                        }
                        break;

                    case 1:
                        if (string.IsNullOrEmpty(pbtitle))
                        {
                            Response.Write("<script>alert('标题不能为空!');window.history.go(-1);</script>");
                            Response.End();
                        }
                        break;

                    case 2:
                        if (string.IsNullOrEmpty(pbtitle))
                        {
                            Response.Write("<script>alert('标题不能为空!');window.history.go(-1);</script>");
                            Response.End();
                        }
                        if (string.IsNullOrEmpty(pbcontent))
                        {
                            Response.Write("<script>alert('活动信息不能为空!');window.history.go(-1);</script>");
                            Response.End();
                        }
                        break;

                    case 3:
                        if (string.IsNullOrEmpty(pbtitle) || string.IsNullOrEmpty(pbcontent))
                        {
                            Response.Write("<script>alert('标题与内容不能为空!');window.history.go(-1);</script>");
                            Response.End();
                        }
                        break;

                    case 4:
                        if (string.IsNullOrEmpty(pbtitle))
                        {
                            Response.Write("<script>alert('标题不能为空!');window.history.go(-1);</script>");
                            Response.End();
                        }
                        break;

                    case 5:
                        break;

                    case 7:    //将评星控件的数据写入数据表中
                        dr["PubContent"] = Request.Params["scoreVal"];
                        break;

                    case 8:    //互动表单
                        break;
                        #endregion
                    }
                    //if (Parentid > 0)
                    //{
                    //    //更新主题信息
                    //    SqlParameter[] sqlparacc = new SqlParameter[1];
                    //    sqlparacc[0] = new SqlParameter("Pubnum", SqlDbType.Int);
                    //    sqlparacc[0].Value = Pubnum + 1;
                    //    pubBll.UpdateModel(sqlparacc, mpub.PubTableName, "id=" + pubitemid.ToString() + "");
                    //}
                }
                codeBll.Insert(dr);
                Upaddnums(mpub); //更新总参与人数
            }
        }