Пример #1
0
        void btnC_Click(object sender, EventArgs e)
        {
            BP.WF.Node  mynd = new BP.WF.Node(this.RefNo);
            BP.WF.Nodes nds  = new BP.WF.Nodes(mynd.FK_Flow);
            foreach (BP.WF.Node nd in nds)
            {
                if ("ND" + nd.NodeID == this.RefNo)
                {
                    continue;
                }

                GroupFields gfs = new GroupFields("ND" + nd.NodeID);
                foreach (GroupField gf in gfs)
                {
                    string id = "CB_" + gf.OID;
                    if (this.Pub1.GetCBByID(id).Checked == false)
                    {
                        continue;
                    }

                    MapAttrs attrs = new MapAttrs();
                    attrs.Retrieve(MapAttrAttr.GroupID, gf.OID);
                    if (attrs.Count == 0)
                    {
                        continue;
                    }
                }
            }
        }
Пример #2
0
        public bool SetNextNodeFH(string flowid, Int64 workid, int nodeid, string emps, int fid)
        {
            try
            {
                BP.WF.Nodes nodes  = BP.WF.Dev2Interface.WorkOpt_GetToNodes(flowid, nodeid, workid, fid);
                int         nodeID = 0;

                foreach (BP.WF.Node node in nodes)
                {
                    nodeID = node.NodeID;
                    break;
                }

                string[] empData = emps.Split(',');

                foreach (string emp in empData)
                {
                    Compeader.Data.Comleader_NodeWork nodeWork = new Compeader.Data.Comleader_NodeWork();

                    string[] empAndTag = emp.Split('@');

                    string userName = "";
                    string tag      = "";
                    string userNo   = "";
                    if (empAndTag.Length >= 2)
                    {
                        tag    = empAndTag[1];
                        userNo = empAndTag[0];

                        try
                        {
                            BP.Port.Emp empSingle = new BP.Port.Emp(userNo);
                            userName = empSingle.Name;
                        }
                        catch (Exception ex)
                        {
                            continue;
                        }
                    }
                    nodeWork.MyPk     = Guid.NewGuid().ToString("N");
                    nodeWork.OID      = workid;
                    nodeWork.NodeID   = nodeid;
                    nodeWork.UserNo   = userNo;
                    nodeWork.Tag      = tag;
                    nodeWork.UserName = userName;
                    nodeWork.Insert();
                }

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
Пример #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (this.IsPostBack == false)
            {
                BP.WF.Node nd = new BP.WF.Node(this.FK_Node);

                //绑定节点集合.
                BP.WF.Nodes nds = new BP.WF.Nodes(nd.FK_Flow);
                foreach (BP.WF.Node mynd in nds)
                {
                    this.DDL_Node.Items.Add(new ListItem(mynd.Name, mynd.NodeID.ToString()));
                }

                switch (nd.HisOutTimeDeal)
                {
                case BP.WF.Template.OutTimeDeal.None:
                    this.RB_0.Checked = true;
                    break;

                case BP.WF.Template.OutTimeDeal.AutoTurntoNextStep:     //自动运行到下一步.
                    this.RB_1.Checked = true;
                    break;

                case BP.WF.Template.OutTimeDeal.AutoJumpToSpecNode:     // 自动转向指定的步骤
                    this.RB_2.Checked = true;
                    //设置当前的选择.
                    this.DDL_Node.SelectedValue = nd.DoOutTime;
                    break;

                case BP.WF.Template.OutTimeDeal.AutoShiftToSpecUser:     //移交给指定的人员.
                    this.RB_3.Checked    = true;
                    this.TB_3_Shift.Text = nd.DoOutTime;
                    break;

                case BP.WF.Template.OutTimeDeal.SendMsgToSpecUser:     //向指定的人员发消息.
                    this.TB_4_SendMsg.Text = nd.DoOutTime;
                    this.RB_4.Checked      = true;
                    break;

                case BP.WF.Template.OutTimeDeal.DeleteFlow:     //删除流程.
                    this.RB_5.Checked = true;
                    break;

                case BP.WF.Template.OutTimeDeal.RunSQL:     //运行SQL
                    this.RB_6.Checked  = true;
                    this.TB_6_SQL.Text = nd.DoOutTime;
                    break;
                }
            }
        }
Пример #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //变量定义: 第几页.
            int currPageIdx = this.PageIdx;
            int pageSize    = 12; //页面记录条数.

            //实体查询.
            BP.WF.Nodes       ens = new BP.WF.Nodes();
            BP.En.QueryObject qo  = new QueryObject(ens);
            qo.AddWhere(BP.WF.Template.NodeAttr.NodePosType, "1"); // 设置查询条件.

            //把代码放到表格尾部, 形成 第1,2,3,4,5 页 .......
            this.Pub2.Clear();
            this.Pub2.BindPageIdx(qo.GetCount(),
                                  pageSize, currPageIdx, "DemoTurnPage.aspx?1=2&3=xx");

            //每页有15条数据,取第2页的数据.
            qo.DoQuery("NodeID", pageSize, currPageIdx);

            this.Pub1.AddTable();
            this.Pub1.AddTR();
            this.Pub1.AddTDTitle("序");
            this.Pub1.AddTDTitle("节点编号");
            this.Pub1.AddTDTitle("节点名称");
            this.Pub1.AddTDTitle("操作");
            this.Pub1.AddTREnd();

            int idx = 0;

            foreach (BP.WF.Node en in ens)
            {
                idx++;
                this.Pub1.AddTR();
                this.Pub1.AddTDIdx(idx);
                this.Pub1.AddTD(en.NodeID);
                this.Pub1.AddTD(en.Name);
                this.Pub1.AddTD("<a href='http://ccflow.org/case.aspx?ID=" + en.NodeID + "' >打开</a>");
                this.Pub1.AddTREnd();
            }
            this.Pub1.AddTableEnd();
        }
Пример #5
0
        public bool SetNextWork(string flowid, Int64 workid, int nodeid, string emps, int fid)
        {
            try
            {
                BP.WF.Nodes nodes  = BP.WF.Dev2Interface.WorkOpt_GetToNodes(flowid, nodeid, workid, fid);
                int         nodeID = 0;

                foreach (BP.WF.Node node in nodes)
                {
                    nodeID = node.NodeID;
                    break;
                }


                BP.WF.Dev2Interface.Node_AddNextStepAccepters(workid, nodeID, emps);
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
Пример #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            BP.WF.Node nd = new BP.WF.Node(this.FK_Node);

            //判断节点消息事件类型,
            switch (this.FK_Event)
            {
            case BP.Sys.EventListOfNode.WorkArrive:    //1.节点到达时
                this.RB_Email_1.Text = "发送给当前节点的所有处理人";
                this.RB_SMS_1.Text   = "发送给当前节点的所有处理人";
                break;

            case BP.Sys.EventListOfNode.SendSuccess:    //2.节点发送成功时
                this.RB_Email_1.Text = "发送给下一个节点的所有接受人";
                this.RB_SMS_1.Text   = "发送给下一个节点的所有接受人";
                break;

            case BP.Sys.EventListOfNode.ReturnAfter:    //3.节点退回后
                this.RB_Email_1.Text = "发送给被退回的节点处理人.";
                this.RB_SMS_1.Text   = "发送给被退回的节点处理人";
                break;

            case BP.Sys.EventListOfNode.UndoneAfter:    //4.工作撤销后
                this.RB_Email_1.Text = "撤销工作后通知的节点接受人";
                this.RB_SMS_1.Text   = "撤销工作后通知的节点接受人";;
                break;

            case BP.Sys.EventListOfNode.FlowOverAfter:    //6.流程结束后
                this.RB_Email_1.Text = "流程结束后通知的节点接受人";
                this.RB_SMS_1.Text   = "流程结束通知的节点接受人";
                break;

            case BP.Sys.EventListOfNode.AfterFlowDel:    //7.流程删除后
                this.RB_Email_1.Text = "流程删除后通知的节点接受人";
                this.RB_SMS_1.Text   = "流程删除通知的节点接受人";
                break;
            }

            if (this.IsPostBack == true)
            {
                return;
            }

            BP.WF.Template.PushMsg msg = new BP.WF.Template.PushMsg();
            msg.MyPK     = this.MyPK;
            msg.FK_Event = this.FK_Event;
            msg.FK_Node  = this.FK_Node;

            if (msg.RetrieveFromDBSources() == 0 &&
                (this.FK_Event == BP.Sys.EventListOfNode.SendSuccess || this.FK_Event == BP.Sys.EventListOfNode.ReturnAfter))
            {
                /*如果是发送成功的消息没有被查询到. */
                msg.MailPushWay = 1;
                msg.SMSPushWay  = 0;
            }

            #region 设置字段下拉框.
            BP.Sys.MapAttrs attrs = new BP.Sys.MapAttrs();
            int             i     = attrs.Retrieve(BP.Sys.MapAttrAttr.FK_MapData, "ND" + FK_Node);
            foreach (BP.Sys.MapAttr item in attrs)
            {
                if (item.LGType != BP.En.FieldTypeS.Normal)
                {
                    continue;
                }
                if (item.MyDataType != BP.DA.DataType.AppString)
                {
                    continue;
                }
                switch (item.KeyOfEn)
                {
                case BP.WF.GEWorkAttr.Emps:
                case BP.WF.GEWorkAttr.MD5:
                case BP.WF.GEWorkAttr.Rec:
                case BP.WF.GEWorkAttr.RecText:
                    break;

                default:
                    break;
                }
                this.DDL_SMS_Fields.Items.Add(new ListItem(item.KeyOfEn + "  ; " + item.Name, item.KeyOfEn));
                this.DDL_Email.Items.Add(new ListItem(item.KeyOfEn + "  ; " + item.Name, item.KeyOfEn));
            }
            #endregion 设置字段下拉框.

            #region 短信内容设置。
            if (msg.SMSPushWay == 0)
            {
                this.RB_SMS_0.Checked = true;
            }
            if (msg.SMSPushWay == 1)
            {
                this.RB_SMS_1.Checked = true;
            }
            if (msg.SMSPushWay == 2)
            {
                this.RB_SMS_2.Checked = true;
            }
            if (msg.SMSPushWay == 3)
            {
                this.RB_SMS_3.Checked = true;
            }

            this.TB_SMS.Text = msg.SMSDoc;
            this.DDL_SMS_Fields.SelectedValue = msg.SMSField;
            #endregion

            #region 邮件内容设置。
            if (msg.MailPushWay == 0)
            {
                this.RB_Email_0.Checked = true;
            }
            if (msg.MailPushWay == 1)
            {
                this.RB_Email_1.Checked = true;
            }
            if (msg.MailPushWay == 2)
            {
                this.RB_Email_2.Checked = true;
            }
            if (msg.MailPushWay == 3)
            {
                this.RB_Email_3.Checked = true;
            }

            this.TB_Email_Title.Text     = msg.MailTitle;
            this.TB_Email_Doc.Text       = msg.MailDoc;
            this.DDL_Email.SelectedValue = msg.MailAddress;
            #endregion 邮件内容设置

            #region 绑定节点.
            BP.WF.Nodes nds = new BP.WF.Nodes(nd.FK_Flow);
            foreach (BP.WF.Node mynd in nds)
            {
                CheckBox cb = new CheckBox();
                cb.ID      = "CB_SMS_" + mynd.NodeID;
                cb.Text    = mynd.Name;
                cb.Checked = msg.SMSNodes.Contains(mynd.NodeID + "");
                this.Pub1.Add(cb);

                CheckBox cb2 = new CheckBox();
                cb2.ID      = "CB_Email_" + mynd.NodeID;
                cb2.Text    = mynd.Name;
                cb2.Checked = msg.MailNodes.Contains(mynd.NodeID + "");
                this.Pub2.Add(cb2);
            }
            #endregion 绑定节点
        }
Пример #7
0
        protected void Btn_Save_Click(object sender, EventArgs e)
        {
            BP.WF.Template.PushMsg msg = new BP.WF.Template.PushMsg();
            msg.MyPK = this.MyPK;
            msg.RetrieveFromDBSources();

            msg.FK_Event = this.FK_Event;
            msg.FK_Node  = this.FK_Node;

            BP.WF.Node  nd  = new BP.WF.Node(this.FK_Node);
            BP.WF.Nodes nds = new BP.WF.Nodes(nd.FK_Flow);

            #region 求出来选择的节点.
            string nodesOfSMS   = "";
            string nodesOfEmail = "";
            foreach (BP.WF.Node mynd in nds)
            {
                foreach (string key in this.Request.Params.AllKeys)
                {
                    if (key.Contains("CB_SMS_" + mynd.NodeID) &&
                        nodesOfSMS.Contains(mynd.NodeID + "") == false)
                    {
                        nodesOfSMS += mynd.NodeID + ",";
                    }

                    if (key.Contains("CB_Email_" + mynd.NodeID) &&
                        nodesOfEmail.Contains(mynd.NodeID + "") == false)
                    {
                        nodesOfEmail += mynd.NodeID + ",";
                    }
                }
            }

            //节点.
            msg.MailNodes = nodesOfEmail;
            msg.SMSNodes  = nodesOfSMS;
            #endregion 求出来选择的节点.


            #region 短信保存.
            //短信推送方式。
            if (this.RB_SMS_0.Checked)
            {
                msg.SMSPushWay = 0;
            }

            if (this.RB_SMS_1.Checked)
            {
                msg.SMSPushWay = 1;
            }

            if (this.RB_SMS_2.Checked)
            {
                msg.SMSPushWay = 2;
            }

            if (this.RB_SMS_3.Checked)
            {
                msg.SMSPushWay = 3;
            }

            //短信手机字段.
            msg.SMSField = this.DDL_SMS_Fields.SelectedValue;
            //替换变量
            string smsstr = this.TB_SMS.Text;
            smsstr = smsstr.Replace("@WebUser.Name", BP.Web.WebUser.Name);
            smsstr = smsstr.Replace("@WebUser.No", BP.Web.WebUser.No);

            System.Data.DataTable dt = BP.WF.Dev2Interface.DB_GenerEmpWorksOfDataTable();
            // smsstr = smsstr.Replace("@RDT",);
            //短信内容模版.
            msg.SMSDoc_Real = smsstr;
            #endregion 短信保存.

            #region 邮件保存.
            //邮件.
            if (this.RB_Email_0.Checked)
            {
                msg.MailPushWay = 0;
            }

            if (this.RB_Email_1.Checked)
            {
                msg.MailPushWay = 1;
            }

            if (this.RB_Email_2.Checked)
            {
                msg.MailPushWay = 2;
            }

            if (this.RB_Email_3.Checked)
            {
                msg.MailPushWay = 3;
            }

            //邮件标题与内容.
            msg.MailTitle_Real = this.TB_Email_Title.Text;
            msg.MailDoc_Real   = this.TB_Email_Doc.Text;

            //邮件地址.
            msg.MailAddress = this.DDL_Email.SelectedValue;

            #endregion 邮件保存.

            //保存.
            if (string.IsNullOrEmpty(msg.MyPK) == true)
            {
                msg.MyPK = BP.DA.DBAccess.GenerGUID();
                msg.Insert();
            }
            else
            {
                msg.Update();
            }

            //转向他.
            this.Response.Redirect("PushMessage.aspx?FK_Node=" + this.FK_Node + "&FK_Event=" + this.FK_Event + "&MyPK" + this.MyPK, true);
        }
        /// <summary>
        /// 添加图片
        /// </summary>
        private void RenderPic(string type)
        {
            #region 处理权限控制.
            BP.Sys.FrmAttachment athDesc = new BP.Sys.FrmAttachment();
            athDesc.MyPK = this.FK_FrmAttachment;
            if (this.FK_Node == null || this.FK_Flow == null)
            {
                athDesc.RetrieveFromDBSources();
            }
            else
            {
                #region 判断是否可以查询出来,如果查询不出来,就可能是公文流程。
                athDesc.MyPK = this.FK_FrmAttachment;
                if (athDesc.RetrieveFromDBSources() == 0 && string.IsNullOrEmpty(this.FK_Flow) == false)
                {
                    /*如果没有查询到它,就有可能是公文多附件被删除了.*/
                    athDesc.MyPK       = this.FK_FrmAttachment;
                    athDesc.NoOfObj    = "DocMultiAth";
                    athDesc.FK_MapData = this.FK_MapData;
                    athDesc.Exts       = "*.*";

                    //存储路径.
                    string path = Server.MapPath("/DataUser/UploadFile/");
                    path          += "\\F" + this.FK_Flow + "MultiAth";
                    athDesc.SaveTo = path;
                    athDesc.IsNote = false; //不显示note字段.


                    //位置.
                    athDesc.X = (float)94.09;
                    athDesc.Y = (float)333.18;
                    athDesc.W = (float)626.36;
                    athDesc.H = (float)150;

                    //多附件.
                    athDesc.UploadType = AttachmentUploadType.Multi;
                    athDesc.Name       = "公文多附件(系统自动增加)";
                    athDesc.SetValByKey("AtPara",
                                        "@IsWoEnablePageset=1@IsWoEnablePrint=1@IsWoEnableViewModel=1@IsWoEnableReadonly=0@IsWoEnableSave=1@IsWoEnableWF=1@IsWoEnableProperty=1@IsWoEnableRevise=1@IsWoEnableIntoKeepMarkModel=1@FastKeyIsEnable=0@IsWoEnableViewKeepMark=1@FastKeyGenerRole=@IsWoEnableTemplete=1");
                    athDesc.Insert();

                    //有可能在其其它的节点上没有这个附件,所以也要循环增加上它.
                    BP.WF.Nodes nds = new BP.WF.Nodes(this.FK_Flow);
                    foreach (BP.WF.Node nd in nds)
                    {
                        athDesc.FK_MapData = "ND" + nd.NodeID;
                        athDesc.MyPK       = athDesc.FK_MapData + "_" + athDesc.NoOfObj;
                        if (athDesc.IsExits == true)
                        {
                            continue;
                        }

                        athDesc.Insert();
                    }

                    //重新查询一次,把默认值加上.
                    athDesc.RetrieveFromDBSources();
                }
                #endregion 判断是否可以查询出来,如果查询不出来,就可能是公文流程。

                #region 处理权限方案。
                /*首先判断是否具有权限方案*/
                string at = BP.Sys.SystemConfig.AppCenterDBVarStr;
                Paras  ps = new BP.DA.Paras();
                ps.SQL = "SELECT FrmSln FROM WF_FrmNode WHERE FK_Node=" + at + "FK_Node AND FK_Flow=" + at + "FK_Flow AND FK_Frm=" + at + "FK_Frm";
                ps.Add("FK_Node", this.FK_Node);
                ps.Add("FK_Flow", this.FK_Flow);
                ps.Add("FK_Frm", this.FK_MapData);
                DataTable dt = DBAccess.RunSQLReturnTable(ps);
                if (dt.Rows.Count == 0)
                {
                    athDesc.RetrieveFromDBSources();
                }
                else
                {
                    int sln = int.Parse(dt.Rows[0][0].ToString());
                    if (sln == 0)
                    {
                        athDesc.RetrieveFromDBSources();
                    }
                    else
                    {
                        int result = athDesc.Retrieve(FrmAttachmentAttr.FK_MapData, this.FK_MapData,
                                                      FrmAttachmentAttr.FK_Node, this.FK_Node, FrmAttachmentAttr.NoOfObj, this.Ath);

                        if (result == 0) /*如果没有定义,就获取默认的.*/
                        {
                            athDesc.RetrieveFromDBSources();
                        }
                        //  throw new Exception("@该流程表单在该节点("+this.FK_Node+")使用的是自定义的权限控制,但是没有定义该附件的权限。");
                    }
                }
                #endregion 处理权限方案。
            }



            #endregion 处理权限控制.

            BP.Sys.FrmAttachmentDBs dbs = LoadAttach(athDesc);
            this.Pub1.AddTable("style='width:100%;overflow:hidden;padding:0px;margin:0px;display:block;'");
            int  idx        = 0;
            bool isHave     = false;
            bool isRedirect = false;
            int  count      = 0;
            foreach (FrmAttachmentDB db in dbs)
            {
                if (!DataType.IsImgExt(db.FileExts))
                {
                    continue;
                }

                if (!string.IsNullOrEmpty(type))
                {
                    int updateIdx = int.Parse(this.Request.QueryString["Idx"]);
                    if (type.Equals("UP"))
                    {
                        if (db.Idx == updateIdx)
                        {
                            db.Idx = updateIdx - 1;
                            db.Update();
                        }
                        else if (db.Idx == updateIdx - 1)
                        {
                            db.Idx = updateIdx;
                            db.Update();
                        }
                    }
                    else if (type.Equals("DOWN"))
                    {
                        if (db.Idx == updateIdx)
                        {
                            db.Idx = updateIdx + 1;
                            db.Update();
                        }
                        else if (db.Idx == updateIdx + 1)
                        {
                            db.Idx = updateIdx;
                            db.Update();
                        }
                    }
                }


                if (db.Idx != 0)
                {
                    isHave = true;
                }



                count++;
            }

            if (!string.IsNullOrEmpty(type))
            {
                dbs = LoadAttach(athDesc);
            }

            foreach (FrmAttachmentDB db in dbs)
            {
                if (!DataType.IsImgExt(db.FileExts))
                {
                    continue;
                }


                this.Pub1.AddTR();



                if (!athDesc.SaveTo.EndsWith("/"))
                {
                    athDesc.SaveTo += "/";
                }

                //s  image.ImageUrl = athDesc.SaveTo + this.WorkID + "/" + db.MyPK + "." + db.FileName;
                // this.Pub1.AddTD("style='width:80%;margin-left:5%;display:block;text-align:center;overflow:scroll' align='center' valign='middle'" ,image);
                this.Pub1.AddTDBegin();

                this.Pub1.Add("<div style='width:80%;margin:0 auto;'>");
                // image.Attributes["style"]="width:800px;heght:600px;";

                string url = athDesc.SaveTo + this.WorkID + "/" + db.MyPK + "." + db.FileName;
                //  url = "";
                this.Pub1.Add("<img src='" + url + "' border=0 />");
                this.Pub1.Add("</div>");
                this.Pub1.AddTDEnd();

                if (athDesc.IsOrder && count > 1)
                {
                    this.Pub1.AddTR();
                    idx++;

                    if (db.Idx == 0)
                    {
                        if (isHave)
                        {
                            db.Idx = count - idx + 1;
                            db.Update();
                        }
                        else
                        {
                            db.Idx = idx;
                            db.Update();
                        }
                        isRedirect = true;
                    }

                    this.Pub1.AddTDBegin();

                    this.Pub1.Add("<div style='width:80%;margin:0 auto;text-align:center;'>");


                    if (idx == count)
                    {
                        this.Pub1.Add(db.FileName + "&nbsp;&nbsp;<a href='FilesView.aspx?DoType=UP&Idx=" + idx + "&DelPKVal=" + db.MyPK + "&FK_FrmAttachment=" + this.FK_FrmAttachment + "&PKVal=" + this.PKVal + "&FK_Flow=" + this.FK_Flow + "&FK_Node=" + this.FK_Node + "&WorkID=" + this.WorkID + "&FK_FrmAttachmentExt=" + this.FK_FrmAttachmentExt + "&IsCC=" + this.IsCC + "&Ath=" + this.Ath + "'>上移</a>&nbsp;&nbsp;<a href='FilesView.aspx?DoType=ViewPic&DelPKVal=" + db.MyPK + "'  target='_balnk'>查看原图</a>");
                    }
                    else if (idx == 1)
                    {
                        this.Pub1.Add(db.FileName + "&nbsp;&nbsp;<a href='FilesView.aspx?DoType=DOWN&Idx=" + idx + "&DelPKVal=" + db.MyPK + "&FK_FrmAttachment=" + this.FK_FrmAttachment + "&PKVal=" + this.PKVal + "&FK_Flow=" + this.FK_Flow + "&FK_Node=" + this.FK_Node + "&WorkID=" + this.WorkID + "&FK_FrmAttachmentExt=" + this.FK_FrmAttachmentExt + "&IsCC=" + this.IsCC + "&Ath=" + this.Ath + "'>下移</a>&nbsp;&nbsp;<a href='FilesView.aspx?DoType=ViewPic&DelPKVal=" + db.MyPK + "'  target='_balnk'>查看原图</a>");
                    }
                    else
                    {
                        this.Pub1.Add(db.FileName + "&nbsp;&nbsp;<a href='FilesView.aspx?DoType=UP&Idx=" + idx + "&DelPKVal=" + db.MyPK + "&FK_FrmAttachment=" + this.FK_FrmAttachment + "&PKVal=" + this.PKVal + "&FK_Flow=" + this.FK_Flow + "&FK_Node=" + this.FK_Node + "&WorkID=" + this.WorkID + "&FK_FrmAttachmentExt=" + this.FK_FrmAttachmentExt + "&IsCC=" + this.IsCC + "&Ath=" + this.Ath + "'>上移</a>&nbsp;&nbsp;<a href='FilesView.aspx?DoType=DOWN&Idx=" + idx + "&DelPKVal=" + db.MyPK + "&FK_FrmAttachment=" + this.FK_FrmAttachment + "&PKVal=" + this.PKVal + "&FK_Flow=" + this.FK_Flow + "&FK_Node=" + this.FK_Node + "&WorkID=" + this.WorkID + "&FK_FrmAttachmentExt=" + this.FK_FrmAttachmentExt + "&IsCC=" + this.IsCC + "&Ath=" + this.Ath + "'>下移</a>&nbsp;&nbsp;<a href='FilesView.aspx?DoType=ViewPic&DelPKVal=" + db.MyPK + "'  target='_balnk'>查看原图</a>");
                    }
                    this.Pub1.Add("</div>");
                    this.Pub1.AddTDEnd();
                    this.Pub1.AddTREnd();
                }
                else
                {
                    this.Pub1.AddTR();

                    this.Pub1.Add("<div style='width:80%;margin:0 auto;text-align:center'>");
                    this.Pub1.AddTDBegin();
                    this.Pub1.Add(db.FileName);
                    this.Pub1.Add("</div>");
                    this.Pub1.AddTDEnd();
                    this.Pub1.AddTREnd();
                }

                this.Pub1.AddTREnd();
            }
            this.Pub1.AddTableEnd();


            if (isRedirect)
            {
                this.Response.Redirect(this.Request.RawUrl, true);
            }
        }