public mlRESQtaByTdr C_SEToReServe(mlREQQtaByTdrReserve poREQQtaByTdrReserve) { var oRESQtaByTdrcs = new cResQtaByTdrcs(); var oSql = new StringBuilder(); try { if (poREQQtaByTdrReserve.tML_BBYQuota == "0" || poREQQtaByTdrReserve.tML_BBYQuota == "")// กันเหนียวไว้ก่อน { tC_ResCod = "03"; tC_Message = "จำนวน Quota เกิน Limit ที่กำหนด"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message)); } switch (poREQQtaByTdrReserve.tML_BBYQuotaType) { case "1": //Per Bonus Buy oSql = C_GEToCountTransNo(poREQQtaByTdrReserve); oSql.AppendLine("GROUP BY FTScdBBYNo"); return(C_CHKoQuota(oSql.ToString(), poREQQtaByTdrReserve)); case "2": //Per Store oSql = C_GEToCountTransNo(poREQQtaByTdrReserve); oSql.AppendLine("AND (FTStmCode = '" + poREQQtaByTdrReserve.tML_StmCode + "')"); oSql.AppendLine("GROUP BY FTStmCode, FTScdBBYNo"); return(C_CHKoQuota(oSql.ToString(), poREQQtaByTdrReserve)); case "3": //per Plant oSql = C_GEToCountTransNo(poREQQtaByTdrReserve); oSql.AppendLine("AND (FTShdPlantCode = '" + poREQQtaByTdrReserve.tML_PlantCode + "')"); oSql.AppendLine("GROUP BY FTShdPlantCode, FTScdBBYNo"); return(C_CHKoQuota(oSql.ToString(), poREQQtaByTdrReserve)); case "4": //per Day oSql = C_GEToCountTransNo(poREQQtaByTdrReserve); oSql.AppendLine("AND (FTShdPlantCode = '" + poREQQtaByTdrReserve.tML_PlantCode + "')"); oSql.AppendLine("AND (DATENAME(dw, FDShdTransDate) = '" + poREQQtaByTdrReserve.tML_BBYDayName + "')"); oSql.AppendLine("GROUP BY FTScdBBYNo, DATENAME(dw, FDShdTransDate)"); return(C_CHKoQuota(oSql.ToString(), poREQQtaByTdrReserve)); default: tC_ResCod = "44"; tC_Message = "ข้อมูล BBYQuotaType ไม่ถูกต้อง"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message)); } } catch (Exception oEx) { tC_ResCod = "44"; tC_Message = "[ReServe : C_SEToReServe] Error=" + oEx.Message; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message)); } }
private mlRESQtaByTdr C_CHKoQuota(string ptSql, mlREQQtaByTdrReserve poREQQtaByTdrReserve) { var oRESQtaByTdrcs = new cResQtaByTdrcs(); var oINSQtaByTdr = new cInsQtaByTdr(); try { // Check Quota By Exprie var oTransDate = DateTime.Parse(poREQQtaByTdrReserve.tML_TransDate); var oStartDate = DateTime.Parse(poREQQtaByTdrReserve.tML_BBYStartDate); var oEndDate = DateTime.Parse(poREQQtaByTdrReserve.tML_BBYEndDate); if (oTransDate < oStartDate || oTransDate > oEndDate) { tC_ResCod = "45"; tC_Message = "ไม่อยู่ในช่วงโปรโมชั่น"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message)); } //Check Quota By Count var oDtQuota = cCNSP.SP_GEToDbTbl(ptSql); if (oDtQuota.Rows.Count != 0) { // Count By CrdQuota if (int.Parse(oDtQuota.Rows[0]["FNIDCnt"].ToString()) >= int.Parse(poREQQtaByTdrReserve.tML_CrdQuota)) { tC_ResCod = "03"; tC_Message = "CrdQuota Limit บัตรใช้งาน ครบจำนวนแล้ว"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message)); } // Count By TransNo else if (int.Parse(oDtQuota.Rows[0]["FNCnt"].ToString()) >= int.Parse(poREQQtaByTdrReserve.tML_BBYQuota)) { tC_ResCod = "03"; tC_Message = "จำนวน Quota เกิน Limit"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message)); } else { //เจอรหัสโปรโมรชั่น และยังไม่หมดโครต้า ให้ทำการจอง return(oINSQtaByTdr.C_INSoTPSTSalBBYTdr(poREQQtaByTdrReserve)); } } else { //ไม่เจอรหัสโปรโมรชั่น ให้ทำการจอง return(oINSQtaByTdr.C_INSoTPSTSalBBYTdr(poREQQtaByTdrReserve)); } } catch (Exception oEx) { tC_ResCod = "44"; tC_Message = "[ReServe : C_CHKoQuota] Error=" + oEx.Message; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message)); } }
public mlRESQtaByTdr C_SEToUsed(mlREQQtaByTdrUsed poREQQtaByTdrUsed) { var oRESQtaByTdrcs = new cResQtaByTdrcs(); var oSql = new StringBuilder(); string tResCode; string tMessage; string tTransStatus = "U"; try { var tTransDate = "'" + cCNSP.DTEtByFormat(poREQQtaByTdrUsed.tML_TransDate, "YYYY-MM-DD") + "'"; oSql.Clear(); oSql.AppendLine("UPDATE TPSTSalBBYTdr WITH(ROWLOCK)"); oSql.AppendLine("SET FTSbyStatus='" + tTransStatus + "' "); oSql.AppendLine(",FCScdAmt = '" + poREQQtaByTdrUsed.tML_DiscAmt + "' "); oSql.AppendLine("WHERE (FTShdPlantCode = '" + poREQQtaByTdrUsed.tML_PlantCode + "' )"); oSql.AppendLine("AND (FTTmnNum = '" + poREQQtaByTdrUsed.tML_POSNo + "')"); oSql.AppendLine("AND (FTShdTransNo = '" + poREQQtaByTdrUsed.tML_TransNo + "' )"); oSql.AppendLine("AND (FTShdTransType = '" + poREQQtaByTdrUsed.tML_TransType + "' )"); oSql.AppendLine("AND (FDShdTransDate = " + tTransDate + " )"); oSql.AppendLine("AND (FTScdBBYNo = '" + poREQQtaByTdrUsed.tML_BBYNo + "' )"); oSql.AppendLine("AND (FDDateIns = '" + poREQQtaByTdrUsed.tML_DateIns + "' )"); oSql.AppendLine("AND (FTTimeIns = '" + poREQQtaByTdrUsed.tML_TimeIns + "' )"); oSql.AppendLine("AND (FNSrcSeqNo = '" + poREQQtaByTdrUsed.tML_SrcSeqNo + "' )"); oSql.AppendLine("AND (FTSbyStatus = 'R')"); var nResult = cCNSP.SP_SETnDbTbl(oSql.ToString()); if (nResult > 0) { tResCode = "04"; tMessage = "ยืนยันการใช่สิทธิ์ สำเร็จ"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tResCode, tMessage)); } else { tResCode = "44"; tMessage = "ยืนยันการใช่สิทธิ์ ไม่สำเร็จ"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tResCode, tMessage)); } } catch (Exception oEx) { tResCode = "44"; tMessage = "Used Error=" + oEx.Message; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tResCode, tMessage)); } }
public mlRESQtaByTdr C_SEToCancel(mlREQQtaByTdrCancel poREQQtaByTdrCancel) { var oRESQtaByTdrcs = new cResQtaByTdrcs(); var oSql = new StringBuilder(); string tResCode; string tMessage; string tTransStatus = "U"; try { var tTransDate = "'" + cCNSP.DTEtByFormat(poREQQtaByTdrCancel.tML_TransDate, "YYYY-MM-DD") + "'"; oSql.Clear(); oSql.AppendLine("UPDATE TPSTSalBBYTdr WITH(ROWLOCK)"); oSql.AppendLine("SET FTSbyStatus='" + tTransStatus + "' "); oSql.AppendLine("WHERE (FTShdPlantCode = '" + poREQQtaByTdrCancel.tML_PlantCode + "')"); oSql.AppendLine("AND (FTTmnNum = '" + poREQQtaByTdrCancel.tML_POSNo + "')"); oSql.AppendLine("AND (FTShdTransNo = '" + poREQQtaByTdrCancel.tML_TransNo + "')"); oSql.AppendLine("AND (FTShdTransType = '" + poREQQtaByTdrCancel.tML_TransType + "')"); oSql.AppendLine("AND (FDShdTransDate = " + tTransDate + " )"); oSql.AppendLine("AND (FTScdBBYNo = '" + poREQQtaByTdrCancel.tML_BBYNo + "')"); oSql.AppendLine("AND (FDDateIns = '" + poREQQtaByTdrCancel.tML_DateIns + "')"); oSql.AppendLine("AND (FTTimeIns = '" + poREQQtaByTdrCancel.tML_TimeIns + "')"); oSql.AppendLine("AND (FNSrcSeqNo = '" + poREQQtaByTdrCancel.tML_SrcSeqNo + "')"); oSql.AppendLine("AND (FTSbyStatus = 'R')"); int nResult = cCNSP.SP_SETnDbTbl(oSql.ToString()); if (nResult > 0) { tResCode = "01"; tMessage = "ยกเลิกการจอง สำเร็จ"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tResCode, tMessage)); } else { tResCode = "44"; tMessage = "ยกเลิกการจอง ไม่สำเร็จ"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tResCode, tMessage)); } } catch (Exception ex) { tResCode = "44"; tMessage = "[Cancel] Error=" + ex.Message; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tResCode, tMessage)); } }