//加入符合此品號/期別的贈品資料 public static string Add_Gift(string sItem, string sPeriod, string sPageTimeStamp) { String rtnValue = ""; if (sItem != "" && sPeriod != "") { PUR_PUR022 PUR022 = new PUR_PUR022(); DataTable dtGift = (DataTable)PUR022.Session["PUR02_Gift_" + sPageTimeStamp]; DataTable dtDetail = (DataTable)PUR022.Session["PUR02_DTL_" + sPageTimeStamp]; if (dtGift == null) { MaintainPurchaseOrder bco = new MaintainPurchaseOrder(ConntionDB); dtGift = bco.QueryGiftSchema(); } MaintainGift Gbco = new MaintainGift(ConntionDB); ParameterList.Clear(); ParameterList.Add(sItem); ParameterList.Add(sPeriod); ParameterList.Add(-1); DataTable dtTmp = Gbco.QueryGift(ParameterList); int iAddRow = 0; if (dtTmp != null && dtTmp.Rows.Count > 0) { for (int i = 0; i < dtTmp.Rows.Count; i++) { if (dtTmp.Rows[i]["ID"].ToString() != "0") { DataRow dr = dtGift.NewRow(); dr["ID"] = 1 + i; dr["ITEM"] = sItem; dr["PERIOD"] = sPeriod; dr["VIRTUAL_CODE"] = dtTmp.Rows[i]["VIRTUAL_CODE"].ToString(); dr["VIRTUAL_NAME"] = dtTmp.Rows[i]["VIRTUAL_NAME"].ToString(); dr["PURCHASE_QTY"] = dtTmp.Rows[i]["PLAN_QTY"].ToString(); string strDate = string.Empty; if (dtDetail != null) { DataRow[] FindRows = dtDetail.Select("ITEM='" + sItem + "' And PERIOD='" + sPeriod + "'"); if (FindRows.Length > 0) { strDate = FindRows[0]["PLAN_ACCEPT_DATE"].ToString(); } } dr["PLAN_ACCEPT_DATE"] = strDate; dr["COST"] = 0; dr["MDC_QTY"] = 0; dr["ACCEPT_ACCQTY"] = 0; dr["MSG"] = ""; dtGift.Rows.Add(dr); iAddRow++; } } if (iAddRow > 0) PUR022.Session["PUR02_Gift_" + sPageTimeStamp] = dtGift; } } return rtnValue; }
//刪除符合此品號/期別的贈品資料 public static string Del_Gift(string sItem, string sPeriod, string sPageTimeStamp) { //有刪除到資料會傳回1,刪除不到傳0. String rtnValue = ""; if (sItem != "" && sPeriod != "") { PUR_PUR022 PUR022 = new PUR_PUR022(); DataTable dtGift = (DataTable)PUR022.Session["PUR02_Gift_" + sPageTimeStamp]; if (dtGift != null) { DataRow[] FindRows = dtGift.Select("ITEM='" + sItem + "' And PERIOD='" + sPeriod + "'"); for (int i = 0; i < FindRows.Length; i++) { dtGift.Rows.Remove(FindRows[i]); } dtGift.AcceptChanges(); PUR022.Session["PUR02_Gift_" + sPageTimeStamp] = dtGift; rtnValue = "1"; } } return rtnValue; }
//離開品號或期別的時候,去資料庫內讀取符合條件的相關資料 public static string AddNewToSession(string sItem, string sPeriod, string sDate, string sPageTimeStamp, string sID) { String rtnValue = ""; ArrayList ParameterList = new ArrayList(); PUR_PUR022 PUR022 = new PUR_PUR022(); DataTable dtDetail = (DataTable)PUR022.Session["PUR02_DTL_" + sPageTimeStamp]; string DeatilData = string.Empty; if (sDate.Trim() != "") { MaintainPurchaseOrder bco = new MaintainPurchaseOrder(ConntionDB); ParameterList.Clear(); ParameterList.Add(sItem); ParameterList.Add(sPeriod); ParameterList.Add(DateTime.Parse(sDate.Trim()).ToString("yyyy/MM/dd")); DateTime DT = DateTime.ParseExact(DateTime.Parse(sDate.Trim()).ToString("yyyy/MM/dd"), "yyyy/MM/dd", null); DateTime DT2 = DT.AddMonths(-1); string sDT = DT2.ToString("yyyy/MM"); sDT = sDT + "/26"; ParameterList.Add(DateTime.Parse(sDT.Trim()).ToString("yyyy/MM/dd")); DeatilData = bco.GetDetail_Data(ParameterList); } //找出新增或修改的筆數資料,將其輸入的值放到Session內 DataRow[] FindRows = dtDetail.Select("ID='" + sID + "'"); if (DeatilData != "") { string[] DetailAry; DetailAry = DeatilData.Split(new Char[] { ';' }); FindRows[0]["ITEM"] = sItem; FindRows[0]["PERIOD"] = sPeriod; FindRows[0]["COST"] = DetailAry[2].ToString(); FindRows[0]["MDC_QTY"] = DetailAry[3].ToString(); FindRows[0]["ACCEPT_ACCQTY"] = DetailAry[4].ToString(); FindRows[0]["PURCHASE_QTY"] = "0"; FindRows[0]["PLAN_ACCEPT_DATE"] = DetailAry[5].ToString(); FindRows[0]["SUMY_COST"] = "0.00"; FindRows[0]["MSG"] = DetailAry[6].ToString(); FindRows[0]["STATUS"] = "FIRST"; rtnValue = "NEW"; } else { FindRows[0]["ITEM"] = sItem; FindRows[0]["PERIOD"] = sPeriod; FindRows[0]["COST"] = "0"; FindRows[0]["MDC_QTY"] = "0"; FindRows[0]["ACCEPT_ACCQTY"] = "0"; FindRows[0]["PURCHASE_QTY"] = "0"; FindRows[0]["PLAN_ACCEPT_DATE"] = ""; FindRows[0]["SUMY_COST"] = "0.00"; FindRows[0]["MSG"] = ""; rtnValue = "NEW_NOREF"; } rtnValue = rtnValue + "<partition>" + decimal.Parse(FindRows[0]["COST"].ToString()).ToString("0.00") + "<partition>" + FindRows[0]["ACCEPT_ACCQTY"].ToString() + "<partition>" + FindRows[0]["MDC_QTY"].ToString() + "<partition>" + FindRows[0]["PLAN_ACCEPT_DATE"].ToString() + "<partition>" + FindRows[0]["MSG"].ToString(); PUR022.Session["PUR02_DTL_" + sPageTimeStamp] = dtDetail; return rtnValue; }
public static string ChkIsDouble(string sItem, string sPeriod, string sPageTimeStamp, string sID) { string rtnValue = "0"; //0.正常 1.重覆 if (sItem != "" && sPeriod != "") { PUR_PUR022 PUR022 = new PUR_PUR022(); DataTable dtDetail = null; dtDetail = (DataTable)PUR022.Session["PUR02_DTL_" + sPageTimeStamp]; if (dtDetail != null) { DataRow[] FindRows = dtDetail.Select("ITEM='" + sItem + "' And PERIOD='" + sPeriod + "' And ID<>'" + sID + "'"); if (FindRows.Length > 0) rtnValue = "1"; } } return rtnValue; }
public static string UpdateRowToSession(string sItem, string sPeriod, string sCost, string sACCEPT_ACCQTY, string sMDC_QTY, string sPurQty, string sMsg, string sAP_Date, string sPageTimeStamp, string sID) { string rtnValue = ""; //把資料加入Session PUR_PUR022 PUR022 = new PUR_PUR022(); DataTable dtDetail = (DataTable)PUR022.Session["PUR02_DTL_" + sPageTimeStamp]; if (dtDetail != null) { DataRow[] FindRows = dtDetail.Select("ID='" + sID + "'"); if (FindRows.Length > 0) { FindRows[0]["ITEM"] = sItem; FindRows[0]["PERIOD"] = sPeriod; FindRows[0]["COST"] = decimal.Parse(sCost); FindRows[0]["ACCEPT_ACCQTY"] = decimal.Parse(sACCEPT_ACCQTY); FindRows[0]["MDC_QTY"] = decimal.Parse(sMDC_QTY); FindRows[0]["PURCHASE_QTY"] = decimal.Parse(sPurQty); decimal dSumy = decimal.Parse(FindRows[0]["COST"].ToString()) * int.Parse(sPurQty); FindRows[0]["SUMY_COST"] = dSumy.ToString("0.00");//取到小數點第2位,四捨五入 FindRows[0]["PLAN_ACCEPT_DATE"] = sAP_Date; FindRows[0]["MSG"] = sMsg; PUR022.Session["PUR02_DTL_" + sPageTimeStamp] = dtDetail; rtnValue = "UPDATE" + "<partition>" + decimal.Parse(FindRows[0]["COST"].ToString()).ToString("0.00") + "<partition>" + FindRows[0]["ACCEPT_ACCQTY"].ToString() + "<partition>" + FindRows[0]["MDC_QTY"].ToString() + "<partition>" + FindRows[0]["PLAN_ACCEPT_DATE"].ToString() + "<partition>" + FindRows[0]["MSG"].ToString(); } } return rtnValue; }