Example #1
0
    protected void btnOK_Click(object sender, EventArgs e)
    {
        try
        {
            WF_STEP_TPL valObj = new WF_STEP_TPL();

            if (txtWFCID.Value != "")
            {
                valObj.WFID = Convert.ToInt32(txtWFCID.Value);
            }
            if (txtSTEP_ID.Value != "")
            {
                valObj.STEP_ID = Convert.ToInt32(txtSTEP_ID.Value);
            }
            if (txtSTEP_NAME.Value != "")
            {
                valObj.STEP_NAME = Convert.ToString(txtSTEP_NAME.Value);
            }
            if (txtPROCID.Value != "")
            {
                valObj.PROCID = Convert.ToInt32(txtPROCID.Value);
            }

            valObj.ISALLOW_GOTO = txtWF_STEP_TPL_ISALLOW_GOTO.Checked;

            if (txtWF_STEP_TPL_LIFE_TIME.Value != "")
            {
                valObj.LIFE_TIME = Convert.ToInt32(txtWF_STEP_TPL_LIFE_TIME.Value);
            }


            //获取通知人
            valObj.NOTICE_MBR = wucSelStaff1.GetSelEmpIDS();

            if (txtSTEP_TYPE.Value != "")
            {
                valObj.STEP_TYPE = Convert.ToInt32(txtSTEP_TYPE.Value);
            }
            if (txtNOTE.Value != "")
            {
                valObj.NOTE = Convert.ToString(txtNOTE.Value);
            }

            if (txtBACK_TYPE.Value != "")
            {
                valObj.BACK_TYPE = Convert.ToInt32(txtBACK_TYPE.Value);
            }
            //List<WF_STEPATH_TPL> lstPath = null;

            if (keyid != "")
            {
                valObj.STEP_ID = Convert.ToInt32(keyid);
                count          = BLLTable <WF_STEP_TPL> .Factory(conn).Update(valObj, WF_STEP_TPL.Attribute.STEP_ID);
            }
            else
            {
                valObj.CONDITION = txtSHOW_CONDITION.Value;
                valObj.FORMULAR  = txtSHOW_FORMULA.Value;

                //WF_STEPATH_TPL pathCond=new WF_STEPATH_TPL();
                //pathCond.NEXT_ID=0;
                //pathCond.WFID = wfid;
                //pathCond.PROCID = procid;
                //lstPath = BLLTable<WF_STEPATH_TPL>.Factory(conn).Select(new WF_STEPATH_TPL(), pathCond);

                count = BLLTable <WF_STEP_TPL> .Factory(conn).Insert(valObj, WF_STEP_TPL.Attribute.STEP_ID);

                keyid = valObj.STEP_ID.ToString();

                if (count > 0)
                {
                    #region//根据建立步骤的顺序建立默认过程路径

                    //WF_STEPATH_TPL path1 = new WF_STEPATH_TPL();
                    //path1.WFID = wfid;
                    //path1.PROCID = procid;
                    //path1.NODE_TYPE = 0;
                    //path1.STEP_ID = int.Parse(keyid);
                    //BLLTable<WF_STEPATH_TPL>.Factory(conn).Insert(path1, WF_STEPATH_TPL.Attribute.PATH_ID);


                    //WF_RULE_TPL preUp = new WF_RULE_TPL();
                    //preUp.STEPS_OUT = keyid;
                    //preUp.NEXT_RULE_ID = rule_e.RULE_ID;
                    //preUp.RULE_ID = rule_pre.RULE_ID;
                    //if (preIsEnd) {
                    //    preUp.RULE_TYPE = 1;
                    //}
                    //BLLTable<WF_RULE_TPL>.Factory(conn).Update(preUp, WF_RULE_TPL.Attribute.RULE_ID);

                    //path1.STEP_TYPE = "1";
                    //path1.RULE_ID = preUp.RULE_ID;
                    //path1.STEP_ID = int.Parse(keyid);
                    //BLLTable<WF_RULEPATH_TPL>.Factory(conn).Insert(path1, WF_RULEPATH_TPL.Attribute.R_PATH_ID);

                    ////根据建立步骤的先后顺序  构造默认的步骤路径
                    //if (lstPath != null && lstPath.Count > 0)
                    //{
                    //    for (int i = 0; i < lstPath.Count; i++)
                    //    {
                    //        WF_STEPATH_TPL cond1 = new WF_STEPATH_TPL();
                    //        cond1.WFID = wfid;
                    //        cond1.PROCID = procid;
                    //        cond1.STEP_ID = lstPath[i].STEP_ID;
                    //        WF_STEPATH_TPL val1 = new WF_STEPATH_TPL();
                    //        val1.NEXT_ID = int.Parse(keyid);

                    //        BLLTable<WF_STEPATH_TPL>.Factory(conn).Update(val1, cond1);

                    //        WF_STEPATH_TPL cond2 = new WF_STEPATH_TPL();
                    //        cond2.WFID = wfid;
                    //        cond2.PROCID = procid;
                    //        cond2.STEP_ID = int.Parse(keyid);
                    //        WF_STEPATH_TPL val2 = new WF_STEPATH_TPL();
                    //        val2.PREV_ID = lstPath[i].STEP_ID;
                    //        BLLTable<WF_STEPATH_TPL>.Factory(conn).Update(val2, cond2);


                    //        WF_STEPATH_TPL preVal = new WF_STEPATH_TPL();

                    //        preVal.PREV_ID = lstPath[i].STEP_ID;
                    //        preVal.STEP_ID = valObj.STEP_ID;
                    //        preVal.NEXT_ID = 0;
                    //        preVal.WFID = valObj.WFID;
                    //        preVal.PROCID = valObj.PROCID;
                    //        if (!BLLTable<WF_STEPATH_TPL>.Exists(preVal))
                    //        {
                    //            preVal.CONDITION = "";
                    //            preVal.FORMULAR = "";
                    //            BLLTable<WF_STEPATH_TPL>.Factory(conn).Insert(preVal);
                    //        }

                    //        WF_STEP_TPL condUp = new WF_STEP_TPL();
                    //        condUp.WFID = wfid;
                    //        condUp.PROCID = procid;
                    //        condUp.STEP_ID = lstPath[i].STEP_ID;
                    //        WF_STEP_TPL upVal = new WF_STEP_TPL();
                    //        upVal.NEXT_IDS = valObj.STEP_ID.ToString();
                    //        BLLTable<WF_STEP_TPL>.Factory(conn).Update(upVal, condUp);

                    //    }
                    //}
                    //else
                    //{
                    //    WF_STEPATH_TPL preVal = new WF_STEPATH_TPL();
                    //    preVal.PREV_ID = 0;
                    //    preVal.STEP_ID = valObj.STEP_ID;
                    //    preVal.NEXT_ID = 0;
                    //    preVal.WFID = valObj.WFID;
                    //    preVal.PROCID = valObj.PROCID;
                    //    if (!BLLTable<WF_STEPATH_TPL>.Exists(preVal))
                    //    {
                    //        preVal.CONDITION = "";
                    //        preVal.FORMULAR = "";
                    //        BLLTable<WF_STEPATH_TPL>.Factory(conn).Insert(preVal);
                    //    }
                    //}
                    #endregion
                }
            }
            if (count > 0)
            {
                if (Request["tree"] != null)
                {
                    string        gotoUrl = "../../../ok.aspx";
                    StringBuilder sb      = new StringBuilder("{");
                    sb.Append("id:'");
                    sb.Append(keyid).Append("',pid:'").Append("0").Append("',no:").Append(valObj.SORT_NUM).Append(",sc:0,name:'");

                    string type = "step";
                    if (valObj.STEP_TYPE.ToString() == WFEnum.StepType.Begin.ToString("d"))
                    {
                        type = "begin";
                    }
                    if (valObj.STEP_TYPE.ToString() == WFEnum.StepType.End.ToString("d"))
                    {
                        type = "end";
                    }
                    if (valObj.STEP_TYPE.ToString() == WFEnum.StepType.Roate.ToString("d"))
                    {
                        type = "roate";
                    }
                    sb.Append(valObj.STEP_NAME).Append("',ntype:'" + type + "'}");

                    if (Request["edit"] == null)
                    {
                        AgileFrame.Core.ScriptHelper.ResponseScript(Page, "parent.TV.showSubNodes(\"" + sb.ToString() + "\");location.replace('" + gotoUrl + "');", false);
                    }
                    else
                    {
                        AgileFrame.Core.ScriptHelper.ResponseScript(Page, "parent.TV.editNodeInfo(\"" + sb.ToString() + "\");location.replace('" + gotoUrl + "');", false);
                    }
                }
                else
                {
                    StringBuilder sbData = new StringBuilder();
                    if (ViewState["sbData"] != null)
                    {
                        sbData.Append(ViewState["sbData"].ToString()).Append(",");
                    }
                    sbData.Append("{valObj:''");
                    List <AttributeItem> lstCol = valObj.af_AttributeItemList;
                    for (int i = 0; i < lstCol.Count; i++)
                    {
                        object val = valObj.GetValue(lstCol[i]);
                        if (val != null)
                        {
                            sbData.Append(",").Append(lstCol[i].FieldName).Append(":'").Append(val.ToString()).Append("'");
                            if (lstCol[i] == WF_STEP_TPL.Attribute.STEP_TYPE)
                            {
                                sbData.Append(",").Append("STEP_TYPE_NAME").Append(":'").Append(FormHelper.GetText(WF_STEP_TPL.Attribute.STEP_TYPE, val)).Append("'");
                                if (val.ToString() == "2")
                                {
                                    sbData.Append(",").Append("HIDE").Append(":'hide'");
                                }
                            }
                        }
                    }
                    sbData.Append("}");

                    Button btn = (Button)sender;
                    if (btn.ID.IndexOf("btnOK") != -1)
                    {
                        if (Request["preUrl"] != null)
                        {
                            Response.Redirect(Request["preUrl"]);
                        }
                        else
                        {
                            ScriptManager.RegisterStartupScript(Page, this.GetType(), "goto", "if (window.opener){window.opener.returnValue = \"[" + sbData + "]\";}else{window.returnValue = \"[" + sbData + "]\";}window.close();", true);
                        }
                    }
                    else
                    {
                        litWarn.Text            = litWarn.Text == "" ? "添加节点成功!" : litWarn.Text += "成功!";
                        ViewState["sbData"]     = sbData.ToString();
                        txtSTEP_ID.Value        = "";
                        txtSHOW_CONDITION.Value = "";
                        txtSHOW_FORMULA.Value   = "";
                    }
                }
            }
        }
        catch (Exception ex)
        {
            litWarn.Text = ex.Message;
        }
    }
Example #2
0
    protected void btnOK_Click(object sender, EventArgs e)
    {
        try
        {
            WF_STEP_TPL valObj = new WF_STEP_TPL();

            if (txtWFCID.Value != "")
                valObj.WFID = Convert.ToInt32(txtWFCID.Value);
            if (txtSTEP_ID.Value != "")
                valObj.STEP_ID = Convert.ToInt32(txtSTEP_ID.Value);
            if (txtSTEP_NAME.Value != "")
                valObj.STEP_NAME = Convert.ToString(txtSTEP_NAME.Value);
            if (txtPROCID.Value != "")
                valObj.PROCID = Convert.ToInt32(txtPROCID.Value);

            valObj.ISALLOW_GOTO = txtWF_STEP_TPL_ISALLOW_GOTO.Checked;

            if (txtWF_STEP_TPL_LIFE_TIME.Value != "")
                valObj.LIFE_TIME =  Convert.ToInt32(txtWF_STEP_TPL_LIFE_TIME.Value);

            //��ȡ֪ͨ��
            valObj.NOTICE_MBR = wucSelStaff1.GetSelEmpIDS();

            if (txtSTEP_TYPE.Value != "")
                valObj.STEP_TYPE = Convert.ToInt32(txtSTEP_TYPE.Value);
            if (txtNOTE.Value != "")
                valObj.NOTE = Convert.ToString(txtNOTE.Value);

            if (txtBACK_TYPE.Value != "")
                valObj.BACK_TYPE = Convert.ToInt32(txtBACK_TYPE.Value);
            //List<WF_STEPATH_TPL> lstPath = null;

            if (keyid != "")
            {
                valObj.STEP_ID = Convert.ToInt32(keyid);
                count = BLLTable<WF_STEP_TPL>.Factory(conn).Update(valObj, WF_STEP_TPL.Attribute.STEP_ID);
            }
            else
            {
                valObj.CONDITION = txtSHOW_CONDITION.Value;
                valObj.FORMULAR = txtSHOW_FORMULA.Value;

                //WF_STEPATH_TPL pathCond=new WF_STEPATH_TPL();
                //pathCond.NEXT_ID=0;
                //pathCond.WFID = wfid;
                //pathCond.PROCID = procid;
                //lstPath = BLLTable<WF_STEPATH_TPL>.Factory(conn).Select(new WF_STEPATH_TPL(), pathCond);

                count = BLLTable<WF_STEP_TPL>.Factory(conn).Insert(valObj, WF_STEP_TPL.Attribute.STEP_ID);
                keyid = valObj.STEP_ID.ToString();

                if (count > 0)
                {
                    #region//���ݽ��������˳����Ĭ�Ϲ���·��

                    //WF_STEPATH_TPL path1 = new WF_STEPATH_TPL();
                    //path1.WFID = wfid;
                    //path1.PROCID = procid;
                    //path1.NODE_TYPE = 0;
                    //path1.STEP_ID = int.Parse(keyid);
                    //BLLTable<WF_STEPATH_TPL>.Factory(conn).Insert(path1, WF_STEPATH_TPL.Attribute.PATH_ID);

                    //WF_RULE_TPL preUp = new WF_RULE_TPL();
                    //preUp.STEPS_OUT = keyid;
                    //preUp.NEXT_RULE_ID = rule_e.RULE_ID;
                    //preUp.RULE_ID = rule_pre.RULE_ID;
                    //if (preIsEnd) {
                    //    preUp.RULE_TYPE = 1;
                    //}
                    //BLLTable<WF_RULE_TPL>.Factory(conn).Update(preUp, WF_RULE_TPL.Attribute.RULE_ID);

                    //path1.STEP_TYPE = "1";
                    //path1.RULE_ID = preUp.RULE_ID;
                    //path1.STEP_ID = int.Parse(keyid);
                    //BLLTable<WF_RULEPATH_TPL>.Factory(conn).Insert(path1, WF_RULEPATH_TPL.Attribute.R_PATH_ID);

                    ////���ݽ���������Ⱥ�˳��  ����Ĭ�ϵIJ���·��
                    //if (lstPath != null && lstPath.Count > 0)
                    //{
                    //    for (int i = 0; i < lstPath.Count; i++)
                    //    {
                    //        WF_STEPATH_TPL cond1 = new WF_STEPATH_TPL();
                    //        cond1.WFID = wfid;
                    //        cond1.PROCID = procid;
                    //        cond1.STEP_ID = lstPath[i].STEP_ID;
                    //        WF_STEPATH_TPL val1 = new WF_STEPATH_TPL();
                    //        val1.NEXT_ID = int.Parse(keyid);

                    //        BLLTable<WF_STEPATH_TPL>.Factory(conn).Update(val1, cond1);

                    //        WF_STEPATH_TPL cond2 = new WF_STEPATH_TPL();
                    //        cond2.WFID = wfid;
                    //        cond2.PROCID = procid;
                    //        cond2.STEP_ID = int.Parse(keyid);
                    //        WF_STEPATH_TPL val2 = new WF_STEPATH_TPL();
                    //        val2.PREV_ID = lstPath[i].STEP_ID;
                    //        BLLTable<WF_STEPATH_TPL>.Factory(conn).Update(val2, cond2);

                    //        WF_STEPATH_TPL preVal = new WF_STEPATH_TPL();

                    //        preVal.PREV_ID = lstPath[i].STEP_ID;
                    //        preVal.STEP_ID = valObj.STEP_ID;
                    //        preVal.NEXT_ID = 0;
                    //        preVal.WFID = valObj.WFID;
                    //        preVal.PROCID = valObj.PROCID;
                    //        if (!BLLTable<WF_STEPATH_TPL>.Exists(preVal))
                    //        {
                    //            preVal.CONDITION = "";
                    //            preVal.FORMULAR = "";
                    //            BLLTable<WF_STEPATH_TPL>.Factory(conn).Insert(preVal);
                    //        }

                    //        WF_STEP_TPL condUp = new WF_STEP_TPL();
                    //        condUp.WFID = wfid;
                    //        condUp.PROCID = procid;
                    //        condUp.STEP_ID = lstPath[i].STEP_ID;
                    //        WF_STEP_TPL upVal = new WF_STEP_TPL();
                    //        upVal.NEXT_IDS = valObj.STEP_ID.ToString();
                    //        BLLTable<WF_STEP_TPL>.Factory(conn).Update(upVal, condUp);

                    //    }
                    //}
                    //else
                    //{
                    //    WF_STEPATH_TPL preVal = new WF_STEPATH_TPL();
                    //    preVal.PREV_ID = 0;
                    //    preVal.STEP_ID = valObj.STEP_ID;
                    //    preVal.NEXT_ID = 0;
                    //    preVal.WFID = valObj.WFID;
                    //    preVal.PROCID = valObj.PROCID;
                    //    if (!BLLTable<WF_STEPATH_TPL>.Exists(preVal))
                    //    {
                    //        preVal.CONDITION = "";
                    //        preVal.FORMULAR = "";
                    //        BLLTable<WF_STEPATH_TPL>.Factory(conn).Insert(preVal);
                    //    }
                    //}
                    #endregion
                }
            }
            if (count > 0)
            {
                if (Request["tree"] != null)
                {
                    string gotoUrl = "../../../ok.aspx";
                    StringBuilder sb = new StringBuilder("{");
                    sb.Append("id:'");
                    sb.Append(keyid).Append("',pid:'").Append("0").Append("',no:").Append(valObj.SORT_NUM).Append(",sc:0,name:'");

                    string type = "step";
                    if (valObj.STEP_TYPE.ToString() == WFEnum.StepType.Begin.ToString("d"))
                    {
                        type = "begin";
                    }
                    if (valObj.STEP_TYPE.ToString() == WFEnum.StepType.End.ToString("d"))
                    {
                        type = "end";
                    }
                    if (valObj.STEP_TYPE.ToString() == WFEnum.StepType.Roate.ToString("d"))
                    {
                        type = "roate";
                    }
                    sb.Append(valObj.STEP_NAME).Append("',ntype:'" + type + "'}");

                    if (Request["edit"] == null)
                    {
                        AgileFrame.Core.ScriptHelper.ResponseScript(Page, "parent.TV.showSubNodes(\"" + sb.ToString() + "\");location.replace('" + gotoUrl + "');", false);
                    }
                    else
                    {
                        AgileFrame.Core.ScriptHelper.ResponseScript(Page, "parent.TV.editNodeInfo(\"" + sb.ToString() + "\");location.replace('" + gotoUrl + "');", false);
                    }
                }
                else
                {
                    StringBuilder sbData = new StringBuilder();
                    if (ViewState["sbData"] != null)
                    {
                        sbData.Append(ViewState["sbData"].ToString()).Append(",");
                    }
                    sbData.Append("{valObj:''");
                    List<AttributeItem> lstCol = valObj.af_AttributeItemList;
                    for (int i = 0; i < lstCol.Count; i++)
                    {
                        object val = valObj.GetValue(lstCol[i]);
                        if (val != null)
                        {
                            sbData.Append(",").Append(lstCol[i].FieldName).Append(":'").Append(val.ToString()).Append("'");
                            if (lstCol[i] == WF_STEP_TPL.Attribute.STEP_TYPE)
                            {
                                sbData.Append(",").Append("STEP_TYPE_NAME").Append(":'").Append(FormHelper.GetText(WF_STEP_TPL.Attribute.STEP_TYPE, val)).Append("'");
                                if (val.ToString() == "2")
                                {
                                    sbData.Append(",").Append("HIDE").Append(":'hide'");
                                }
                            }

                        }
                    }
                    sbData.Append("}");

                    Button btn = (Button)sender;
                    if (btn.ID.IndexOf("btnOK") != -1)
                    {
                        if (Request["preUrl"] != null)
                        {
                            Response.Redirect(Request["preUrl"]);
                        }
                        else
                        {
                            ScriptManager.RegisterStartupScript(Page, this.GetType(), "goto", "if (window.opener){window.opener.returnValue = \"[" + sbData + "]\";}else{window.returnValue = \"[" + sbData + "]\";}window.close();", true);
                        }
                    }
                    else
                    {
                        litWarn.Text = litWarn.Text == "" ? "��ӽڵ�ɹ���" : litWarn.Text += "�ɹ���";
                        ViewState["sbData"] = sbData.ToString();
                        txtSTEP_ID.Value = "";
                        txtSHOW_CONDITION.Value = "";
                        txtSHOW_FORMULA.Value = "";
                    }
                }
            }
        }
        catch (Exception ex)
        {
            litWarn.Text = ex.Message;
        }
    }