コード例 #1
0
ファイル: STM272.aspx.cs プロジェクト: ChiangHanLung/PIC_VDS
    protected void btnEdt_Click(object sender, EventArgs e)
    {
        //檢核必輸入欄位
        TextBox ACCEPT_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_START).FindControl("TextBoxCode"));
        TextBox ACCEPT_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_END).FindControl("TextBoxCode"));
        TextBox ACCEPT_FIRST_DATE = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_FIRST_DATE).FindControl("TextBoxCode"));
        TextBox RETURN_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_START).FindControl("TextBoxCode"));
        TextBox RETURN_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_END).FindControl("TextBoxCode"));
        TextBox txtCOL_DAYS = (TextBox)(SLP_COL_DAYS.TextBox_Code);

        TextBox[] FieldIDs ={ txtPROMOTE_NAME, txtPROMOTE_MONTH.TextBoxCode_Object, txtACCT_MONTH.TextBoxCode_Object, ACCEPT_DATE_START, ACCEPT_DATE_END, ACCEPT_FIRST_DATE, RETURN_DATE_START, RETURN_DATE_END, txtCOL_DAYS };
        string[] FieldNames ={ "檔期名稱", "活動月份", "結帳月份", "進貨開始日", "進貨結束日", "首次出貨日", "退貨開始日", "退貨結束日", "收款天數" };
        int i = 0;
        foreach (TextBox FieldName in FieldIDs)
        {
            if (FieldName.Text.Trim().Length == 0)
            {
                ErrorMsgLabel.Text = "必須輸入「" + FieldNames[i] + "」欄位";
                return;
            }
            i++;
        }

        if (Request[SLP_COL_DAYS.TextBox_Name.UniqueID].ToString() == "查無資料")
        {
            ErrorMsgLabel.Text = "查無收款天數資料";
            return;
        }

        if (SLP_NOTES.Text != "" && Request[SLP_NOTES.TextBox_Name.UniqueID].ToString() == "查無資料")
        {
            ErrorMsgLabel.Text = "查無檔期備註資料";
            return;
        }

        //簡化至check_date
        ////進貨開始日須小於進貨結束日
        //if ((SLP_ACCEPT_DATE_START.Text != "") || (SLP_ACCEPT_DATE_END.Text != ""))
        //{
        //    if (DateTime.Parse(SLP_ACCEPT_DATE_START.Text) >= DateTime.Parse(SLP_ACCEPT_DATE_END.Text))
        //    {
        //        ErrorMsgLabel.Text = "進貨開始日須小於進貨結束日 !!";
        //        return;
        //    }
        //}

        //判斷是否已審核
        if (txtCONFIRM_CODE.Text == "已審核")
        {
            ErrorMsgLabel.Text = "已審核資料不可修改,請先審核解除再進行修改 !!";
            return;
        }

        //日期條件檢查
        if (!check_date())
        {
            return;
        }

        DataSet ds1 = (DataSet)Session["STM272_" + PageTimeStamp.Value];
        DataTable dtSTORE = ds1.Tables[0].DefaultView.ToTable(true, "STORE");

        STMModel.MaintainPromoteExhibition STM = new STMModel.MaintainPromoteExhibition(ConnectionDB);

        foreach (DataRow dr in dtSTORE.Rows)
        {
            if (!(STM.CheckDcDate(dr["STORE"].ToString(), ACCEPT_FIRST_DATE.Text)))
            {
                ErrorMsgLabel.Text = "檔期首次進貨日不在門市" + dr["STORE"].ToString() + "適用日期區間中!!";
                return;
            }
        }

        if (this.SLP_PRICE_SUBSIDY_PERCENT.Text.Length > 0)
        {
            if (Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) < 0)
            {
                ErrorMsgLabel.Text = "[門市補貼%]欄位請輸入100>門市補貼>0值<br/>";
                return;
            }
        }

        if (this.SLP_COST_SUBSIDY_PERCENT.Text.Length > 0)
        {
            if (Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) < 0)
            {
                ErrorMsgLabel.Text = "[出版社補貼%]欄位請輸入100>出版社補貼>0值<br/>";
                return;
            }
        }

        //儲存作業
        int v_ID = 0;

        #region
        try
        {
            #region 取得畫面元件的值

            DateTime processtime = DateTime.Now;

            #endregion

            #region 檔期活動
            ParameterList.Clear();
            ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["PROMOTE_ID"].ToString(), "string", false));
            ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["CREATEDATE"].ToString(), "datetime", false));
            ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["CREATEUID"].ToString(), "string", false));
            ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["UPDATEDATE"].ToString(), "datetime", false));
            ParameterList.Add(GetValueSetParameter(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["UPDATEUID"].ToString(), "string", false));
            ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_NAME.Text, "string", false)); //V_NEW_PROMOTE_NAME
            ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_MONTH.Text, "string", false)); //V_NEW_PROMOTE_MONTH
            ParameterList.Add(GetValueSetParameter(this.txtACCT_MONTH.Text, "string", false)); //V_NEW_ACCT_MONTH
            ParameterList.Add(GetValueSetParameter(this.SLP_COL_DAYS.Text, "string", false)); //V_NEW_COL_DAYS
            ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_START.Text, "date", false)); //D_NEW_ACCEPT_DATE_START
            ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_END.Text, "date", false)); //D_NEW_ACCEPT_DATE_END
            ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_FIRST_DATE.Text, "date", false)); //D_NEW_ACCPET_FIRST_DATE
            ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_START.Text, "date", false)); //D_NEW_RETURN_DATE_START
            ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_END.Text, "date", false)); //D_NEW_RETURN_DATE_END
            ParameterList.Add(GetValueSetParameter(this.ddlPROMOTE_TYPE.Text, "int", false)); //N_NEW_PROMOTE_TYPE
            ParameterList.Add(GetValueSetParameter(this.ddlDISCOUNT_TYPE.Text, "string", false)); //V_NEW_DISCOUNT_TYPE
            ParameterList.Add(GetValueSetParameter(this.SLP_NOTES.Text, "string", false)); //N_NEW_NOTES
            ParameterList.Add(GetValueSetParameter(this.SLP_PRICE_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_PRICE_SUBSIDY_PERCENT
            ParameterList.Add(GetValueSetParameter(this.SLP_COST_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_COST_SUBSIDY_PERCENT
            ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false)); //V_NEW_AC_UID
            if (this.txtCONFIRM_CODE.Text == "已審核")
                ParameterList.Add(1); //N_CONFIRM_CODE
            else
                ParameterList.Add(0); //N_CONFIRM_CODE
            ParameterList.Add(64); //N_NEW_DISCOUNT_KIND
            ParameterList.Add(processtime);
            ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false));

            #endregion

            #region 商品

            DataSet ds = (DataSet)Session["STM272_" + PageTimeStamp.Value];

            #endregion

            STMModel.MaintainPromoteExhibition BCO = new STMModel.MaintainPromoteExhibition(ConnectionDB);

            BCO.UpdateStoreBase(ParameterList, null, ds.Tables[0]);

            QueryData(ds_Data.Tables["VDS_STM_PROMOTE_MST"].Rows[0]["PROMOTE_ID"].ToString());

            ScriptManager.RegisterStartupScript(UpdatePanel11, this.GetType(), "ClientScript", "alert('更新完成');", true);
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message.Split(Environment.NewLine.Replace(Environment.NewLine, "~").ToCharArray())[0];  //直接取第一個
        }
        #endregion
    }
コード例 #2
0
ファイル: STM272.aspx.cs プロジェクト: ChiangHanLung/PIC_VDS
    protected void btnSave_Click(object sender, EventArgs e)
    {
        STMModel.MaintainPromoteExhibition STM = new STMModel.MaintainPromoteExhibition(ConntionDB);

        //檢核必輸入欄位
        TextBox ACCEPT_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_START).FindControl("TextBoxCode"));
        TextBox ACCEPT_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_DATE_END).FindControl("TextBoxCode"));
        TextBox ACCEPT_FIRST_DATE = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_ACCEPT_FIRST_DATE).FindControl("TextBoxCode"));
        TextBox RETURN_DATE_START = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_START).FindControl("TextBoxCode"));
        TextBox RETURN_DATE_END = ((TextBox)((ASP.wui_slp_slp_slpdate_ascx)SLP_RETURN_DATE_END).FindControl("TextBoxCode"));

        TextBox txtPROMOTE = (TextBox)(txtPROMOTE_MONTH.TextBoxCode_Object);
        TextBox txtACCT = (TextBox)(txtACCT_MONTH.TextBoxCode_Object);
        TextBox txtCOL_DAYS = (TextBox)(SLP_COL_DAYS.TextBox_Code);
        //   
        //       
        TextBox[] FieldIDs ={ txtPROMOTE_ID, txtPROMOTE_NAME, txtPROMOTE_MONTH.TextBoxCode_Object, txtACCT_MONTH.TextBoxCode_Object, ACCEPT_DATE_START, ACCEPT_DATE_END, ACCEPT_FIRST_DATE, RETURN_DATE_START, RETURN_DATE_END, txtCOL_DAYS };
        string[] FieldNames ={ "檔期編號", "檔期名稱", "活動月份", "結帳月份", "進貨開始日", "進貨結束日", "首次出貨日", "退貨開始日", "退貨結束日", "收款天數" };
        int i = 0;
        foreach (TextBox FieldName in FieldIDs)
        {
            if (FieldName.Text.Trim().Length == 0)
            {
                ErrorMsgLabel.Text = "必須輸入「" + FieldNames[i] + "」欄位";
                return;
            }
            i++;
        }

        if (Request[SLP_COL_DAYS.TextBox_Name.UniqueID].ToString() == "查無資料")
        {
            ErrorMsgLabel.Text = "查無收款天數資料";
            return;
        }

        if (SLP_NOTES.Text != "" && Request[SLP_NOTES.TextBox_Name.UniqueID].ToString() == "查無資料")
        {
            ErrorMsgLabel.Text = "查無檔期備註資料";
            return;
        }

        //簡化至check_date
        ////進貨開始日須小於進貨結束日
        //if ((SLP_ACCEPT_DATE_START.Text != "") || (SLP_ACCEPT_DATE_END.Text != ""))
        //{
        //    if (DateTime.Parse(SLP_ACCEPT_DATE_START.Text) >= DateTime.Parse(SLP_ACCEPT_DATE_END.Text))
        //    {
        //        ErrorMsgLabel.Text = "進貨開始日須小於進貨結束日 !!";
        //        return;
        //    }
        //}

        //日期條件檢查
        if (!check_date())
        {
            return;
        }

        DataSet ds1 = (DataSet)Session["STM272_" + PageTimeStamp.Value];
        DataTable dtSTORE = ds1.Tables[0].DefaultView.ToTable(true, "STORE");

        foreach (DataRow dr in dtSTORE.Rows)
        {
            DataRow[] drNoItem = (DataRow[])ds1.Tables[0].Select("STORE='" + dr["STORE"].ToString() + "' AND (ITEM='NOITEM' OR ITEM IS NULL)");

            if (drNoItem.Length > 0)
            {
                ErrorMsgLabel.Text = "尚有門市未新增商品資料 !!";
                return;
            }

            if (!(STM.CheckDcDate(dr["STORE"].ToString(), ACCEPT_FIRST_DATE.Text)))
            {
                ErrorMsgLabel.Text = "檔期首次進貨日不在門市" + dr["STORE"].ToString()+"適用日期區間中!!";
                return;
            }
        }

        if (this.SLP_PRICE_SUBSIDY_PERCENT.Text.Length > 0)
        {
            if (Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_PRICE_SUBSIDY_PERCENT.Text.Trim()) < 0)
            {
                ErrorMsgLabel.Text = "[門市補貼%]欄位請輸入100>門市補貼>0值<br/>";
                return;
            }
        }

        if (this.SLP_COST_SUBSIDY_PERCENT.Text.Length > 0)
        {
            if (Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) > 100 || Convert.ToDecimal(this.SLP_COST_SUBSIDY_PERCENT.Text.Trim()) < 0)
            {
                ErrorMsgLabel.Text = "[出版社補貼%]欄位請輸入100>出版社補貼>0值<br/>";
                return;
            }
        }

        STMModel.VDS_STM37_BCO bco37 = new STMModel.VDS_STM37_BCO(ConnectionDB);

        string ProID = txtPROMOTE_ID.Text;
        int N_CNT_M;
        int N_CNT_N;

        DataTable dt_s = bco37.QueryPromoteS(ProID, out N_CNT_M, out N_CNT_N);

        if (N_CNT_M > 0)
        {
            this.ErrorMsgLabel.Text = "與特殊書展編號重複";
            return;
        }
 

        //儲存作業
        string v_ID = "";

        #region
        try
        {
            #region 取得畫面元件的值

            DateTime processtime = DateTime.Now;

            #endregion

            #region 檔期活動
            ParameterList.Clear();
            ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_NAME.Text, "string", false)); //V_PROMOTE_NAME
            ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_MONTH.Text, "string", false)); //V_PROMOTE_MONTH
            ParameterList.Add(GetValueSetParameter(this.txtACCT_MONTH.Text, "string", false)); //V_ACCT_MONTH
            ParameterList.Add(GetValueSetParameter(this.SLP_COL_DAYS.Text, "string", false)); //V_COL_DAYS
            ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_START.Text, "date", false)); //D_ACCEPT_DATE_START
            ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_DATE_END.Text, "date", false)); //D_ACCEPT_DATE_END
            ParameterList.Add(GetValueSetParameter(this.SLP_ACCEPT_FIRST_DATE.Text, "date", false)); //D_ACCPET_FIRST_DATE
            ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_START.Text, "date", false)); //D_RETURN_DATE_START
            ParameterList.Add(GetValueSetParameter(this.SLP_RETURN_DATE_END.Text, "date", false)); //D_RETURN_DATE_END
            ParameterList.Add(GetValueSetParameter(this.ddlPROMOTE_TYPE.SelectedValue.ToString(), "int", false)); //N_PROMOTE_TYPE
            ParameterList.Add(GetValueSetParameter(this.ddlDISCOUNT_TYPE.SelectedValue.ToString(), "string", false)); //V_DISCOUNT_TYPE
            ParameterList.Add(GetValueSetParameter(this.SLP_NOTES.Text, "string", false)); //N_NOTES
            ParameterList.Add(GetValueSetParameter(this.SLP_PRICE_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_PRICE_SUBSIDY_PERCENT
            ParameterList.Add(GetValueSetParameter(this.SLP_COST_SUBSIDY_PERCENT.Text, "Decimal", false)); //N_COST_SUBSIDY_PERCENT
            ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false)); //V_AC_UID
            if (this.txtCONFIRM_CODE.Text == "已審核")
                ParameterList.Add(1); //N_CONFIRM_CODE
            else
                ParameterList.Add(0); //N_CONFIRM_CODE
            ParameterList.Add(64); //N_DISCOUNT_KIND固定
            ParameterList.Add(processtime);
            ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false));
            ParameterList.Add(processtime);
            ParameterList.Add(GetValueSetParameter(Session["UID"].ToString(), "string", false));
            ParameterList.Add(GetValueSetParameter(this.txtPROMOTE_ID.Text, "string", false));
            #endregion

            #region 商品

            DataSet ds = (DataSet)Session["STM272_" + PageTimeStamp.Value];

            #endregion

            STMModel.MaintainPromoteExhibition BCO = new STMModel.MaintainPromoteExhibition(ConnectionDB);

            v_ID = BCO.CreateStoreBase(ParameterList, null, ds.Tables[0]);

            if ((v_ID == "") || (v_ID == null))
            {
                throw new Exception("新增0筆資料!");
            }
            else
            {
                QueryData(v_ID);
                txtPROMOTE_ID.ReadOnly = true;
                txtPROMOTE_ID.CssClass = "readtxtbox";
                btnSave.Visible = false;      //確定新增
                btnAddCancle.Visible = false; //取消(回查詢頁)
                btnEdt.Visible = CanUpdate;        //確定更新 
                btnUpdateCancel.Visible = true;     //取消
                btnAdd.Visible = CanUpdate;     //新增門市
                btnAddItem.Visible = CanUpdate;     //新增商品
                btnUpdateItem.Visible = false;
                GridView1.Columns[4].Visible = CanDelete;   //商品 GRID "刪除"欄位
                GridView2.Columns[8].Visible = CanDelete;  //門市 GRID "刪除"欄位
                GMToolbar1.ButtonEnableControl(WUI_GMToolbarV.ButtonType.Save, true, string.Empty, this.btnEdt, WUI_GMToolbarV.ClickAction.ButtonClick);
                ScriptManager.RegisterStartupScript(UpdatePanel11, this.GetType(), "ClientScript", "alert('新增完成');", true);
            }
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message.Split(Environment.NewLine.Replace(Environment.NewLine, "~").ToCharArray())[0];  //直接取第一個
        }
        #endregion
    }