public bool UpdateStockinReturnStatus(ArrayList arrData, string userID) { bool ret = true; OracleDBObj obj = new OracleDBObj(); obj.CreateConnection(); obj.CreateTransaction(); try { for (int i = 0; i < arrData.Count; i++) { if (GetItem(Convert.ToDouble(arrData[i])).Rows.Count == 0) { throw new ApplicationException("äÁèÊÒÁÒö͹ØÁѵÔÃÒ¡ÒÃä´é à¹×èͧ¨Ò¡ºÒ§ÃÒ¡ÒÃäÁèä´éÃкØÊÔ¹¤éÒ"); } StockinReturnData data = GetData(Convert.ToDouble(arrData[i])); DALObj.OnDB = false; DALObj.GetDataByLOID(Convert.ToDouble(arrData[i]), obj.zTrans); if (DALObj.STATUS == Constz.StockinReturn.Status.Waiting.Code) { DALObj.STATUS = Constz.StockinReturn.Status.Approved.Code; ret = DALObj.UpdateCurrentData(userID, obj.zTrans); if (!ret) throw new ApplicationException(DALObj.ErrorMessage); StockInDAL sDAL = new StockInDAL(); ret = sDAL.CutStock(DALObj.LOID, userID, obj.zTrans); if (!ret) throw new ApplicationException(sDAL.ErrorMessage); } StockInItemDAL itemDAL = new StockInItemDAL(); ret = itemDAL.UpdateStatusByStockIn(Convert.ToDouble(arrData[i]), Constz.StockinReturn.Status.Approved.Code, userID, obj.zTrans); if (!ret) throw new ApplicationException(itemDAL.ErrorMessage); } obj.zTrans.Commit(); obj.CloseConnection(); } catch (Exception ex) { obj.zTrans.Rollback(); obj.CloseConnection(); ret = false; _error = ex.Message; } return ret; }
public bool CommitData(string userID, StockinReturnData data) { bool ret = true; bool cutstock = true; bool custockinreturnlost = true; if (ValidateData(data)) { OracleDBObj obj = new OracleDBObj(); obj.CreateConnection(); obj.CreateTransaction(); try { DALObj.OnDB = false; DALObj.GetDataByLOID(data.LOID, obj.zTrans); cutstock = (DALObj.STATUS == Constz.Requisition.Status.Waiting.Code); custockinreturnlost = cutstock; UpdateData(userID, data, obj.zTrans); if (cutstock) { StockInDAL sDAL = new StockInDAL(); ret = sDAL.CutStock(DALObj.LOID, userID, obj.zTrans); if (!ret) _error = sDAL.ErrorMessage; } if (custockinreturnlost) { StockInDAL sDAL = new StockInDAL(); ret = sDAL.CutStockInReturnLost(DALObj.LOID, userID, obj.zTrans); if (!ret) _error = sDAL.ErrorMessage; } obj.zTrans.Commit(); obj.CloseConnection(); } catch (Exception ex) { obj.zTrans.Rollback(); obj.CloseConnection(); ret = false; _error = ex.Message; } } else ret = false; return ret; }