public mlRESQtaByTdr C_SEToReServe(mlREQQtaByTdrReserve poREQQtaByTdrReserve) { var oRESQtaByTdrcs = new cResMsgQtaByTdrcs(); 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 cResMsgQtaByTdrcs(); 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 = cConDbByTender.C_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 cResMsgQtaByTdrcs(); 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 = cConDbByTender.C_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_INSoTPSTSalBBYTdr(mlREQQtaByTdrReserve poREQQtaByTdrReserve) { StringBuilder oSql = new StringBuilder(); cResMsgQtaByTdrcs oRESQtaByTdrcs = new cResMsgQtaByTdrcs(); string tC_ResCod; string tC_Message; string tTransStatus = "R"; try { string tTransDate = "'" + cCNSP.DTEtByFormat(poREQQtaByTdrReserve.tML_TransDate, "YYYY-MM-DD") + "'"; oSql.Clear(); oSql.AppendLine("INSERT INTO TPSTSalBBYTdr WITH(ROWLOCK) ("); oSql.AppendLine("FTStmCode"); oSql.AppendLine(",FTTmnNum"); oSql.AppendLine(",FTShdTransNo"); oSql.AppendLine(",FTShdTransType"); oSql.AppendLine(",FDShdTransDate"); oSql.AppendLine(",FTShdPlantCode"); oSql.AppendLine(",FTSbyStatus"); oSql.AppendLine(",FTScdCardID"); oSql.AppendLine(",FTMcdCardType"); oSql.AppendLine(",FTScdBBYProfID"); oSql.AppendLine(",FTScdBBYNo"); oSql.AppendLine(",FTSbyQuotaType"); oSql.AppendLine(",FTSbyDayName"); oSql.AppendLine(",FTSbyQuota"); oSql.AppendLine(",FNPpmCrdQuota"); oSql.AppendLine(",FTTdmCode"); oSql.AppendLine(",FTCdcCreditType"); oSql.AppendLine(",FCScdAmtB4Avi"); oSql.AppendLine(",FTWhoIns"); oSql.AppendLine(",FDDateIns"); oSql.AppendLine(",FTTimeIns"); oSql.AppendLine(",FNSrcSeqNo"); oSql.AppendLine(")VALUES("); oSql.AppendLine("'" + poREQQtaByTdrReserve.tML_StmCode + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_POSNo + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_TransNo + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_TransType + "'"); oSql.AppendLine(",CONVERT(VARCHAR(10), " + tTransDate + ", 121)"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_PlantCode + "'"); oSql.AppendLine(",'" + tTransStatus + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_McardNo + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_McardType + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_BBYProfID + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_BBYNo + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_BBYQuotaType + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_BBYDayName + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_BBYQuota + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_CrdQuota + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_TdmCode + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_TdmCardType + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_AmtB4Disc + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_UserName + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_DateIns + "'"); oSql.AppendLine(",'" + poREQQtaByTdrReserve.tML_TimeIns + "'"); oSql.AppendLine(",'" + int.Parse(poREQQtaByTdrReserve.tML_SrcSeqNo) + "'"); oSql.AppendLine(")"); int nResult = cConDbByTender.C_SETnDbTbl(oSql.ToString()); if (nResult > 0) { tC_ResCod = "00"; tC_Message = "จองสิทธิ์ส่วนลด สำเร็จ"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message, poREQQtaByTdrReserve.tML_DateIns, poREQQtaByTdrReserve.tML_TimeIns)); } else { throw new Exception(); } } catch (SqlException) { tC_ResCod = "44"; tC_Message = "จองสิทธิ์ส่วนลด ไม่สำเร็จ อาจจะมีอยู่แล้ว หรือใช้ไปแล้ว"; return(oRESQtaByTdrcs.C_SEToRESQtaByTdr(tC_ResCod, tC_Message, poREQQtaByTdrReserve.tML_DateIns, poREQQtaByTdrReserve.tML_TimeIns)); } }