Exemplo n.º 1
0
 public bool SetInvoiceCode(string userID, double requisition)
 {
     bool ret = true;
     OracleDBObj obj = new OracleDBObj();
     obj.CreateConnection();
     obj.CreateTransaction();
     try
     {
         RequisitionDAL reqDAL = new RequisitionDAL();
         reqDAL.GetDataByLOID(requisition, obj.zTrans);
         if (reqDAL.INVCODE == "")
         {
             reqDAL.INVCODE = OracleDB.GetRunningCode("REQUISITION_INVCODE", reqDAL.REQUISITIONTYPE.ToString(), obj.zTrans);
             ret = reqDAL.UpdateCurrentData(userID, obj.zTrans);
             if (!ret) throw new ApplicationException(reqDAL.ErrorMessage);
         }
         obj.zTrans.Commit();
         obj.CloseConnection();
     }
     catch (Exception ex)
     {
         obj.zTrans.Rollback();
         obj.CloseConnection();
         ret = false;
         _error = ex.Message;
     }
     return ret;
 }
Exemplo n.º 2
0
        public bool SubmitStockOut(string userID, double stockOut)
        {
            bool ret = true;
            OracleDBObj obj = new OracleDBObj();
            obj.CreateConnection();
            obj.CreateTransaction();
            try
            {
                DALObj.OnDB = false;
                DALObj.GetDataByLOID(stockOut, obj.zTrans);
                if (DALObj.STATUS == Constz.Requisition.Status.Waiting.Code)
                {
                    DALObj.STATUS = Constz.Requisition.Status.Approved.Code;

                    ret = DALObj.UpdateCurrentData(userID, obj.zTrans);
                    if (!ret) throw new ApplicationException(DALObj.ErrorMessage);

                    RequisitionDAL rDAL = new RequisitionDAL();
                    rDAL.GetDataByLOID(DALObj.REFLOID, obj.zTrans);
                    rDAL.ACTIVE = Constz.ActiveStatus.InActive;

                    ret = rDAL.UpdateCurrentData(userID, obj.zTrans);
                    if (!ret) throw new ApplicationException(rDAL.ErrorMessage);

                    ret = DALItemObj.UpdateStatusByStockOut(stockOut, DALObj.STATUS, userID, obj.zTrans);
                    if (!ret) throw new ApplicationException(DALItemObj.ErrorMessage);

                    ret = DALObj.CutStock(LOID, userID, obj.zTrans);
                    if (!ret) throw new ApplicationException(DALObj.ErrorMessage);

                }

                obj.zTrans.Commit();
                obj.CloseConnection();
            }
            catch (Exception ex)
            {
                obj.zTrans.Rollback();
                obj.CloseConnection();
                ret = false;
                _error = ex.Message;
            }
            return ret;
        }
Exemplo n.º 3
0
        public bool UpdateStockOutStatus(string userID, double stockOut, string status)
        {
            bool ret = true;
            OracleDBObj obj = new OracleDBObj();
            obj.CreateConnection();
            obj.CreateTransaction();
            try
            {
                DALObj.OnDB = false;
                DALObj.GetDataByLOID(stockOut, obj.zTrans);
                DALObj.STATUS = status;

                if (DALObj.OnDB)
                    ret = DALObj.UpdateCurrentData(userID, obj.zTrans);
                if (!ret) throw new ApplicationException(DALObj.ErrorMessage);

                RequisitionDAL rDAL = new RequisitionDAL();
                rDAL.GetDataByLOID(DALObj.REFLOID, obj.zTrans);
                rDAL.ACTIVE = Constz.ActiveStatus.InActive;
                if (rDAL.OnDB)
                    ret = rDAL.UpdateCurrentData(userID, obj.zTrans);
                if (!ret) throw new ApplicationException(rDAL.ErrorMessage);

                ret = DALItemObj.UpdateStatusByStockOut(stockOut, status, userID, obj.zTrans);
                if (!ret) throw new ApplicationException(DALItemObj.ErrorMessage);

                PDProductDAL pdDAL = new PDProductDAL();
                pdDAL.GetDataByLOID(rDAL.REFLOID, obj.zTrans);

                PDOrderDAL poDAL = new PDOrderDAL();
                poDAL.GetDataByLOID(pdDAL.PDORDER, obj.zTrans);
                poDAL.STATUS = Constz.Requisition.Status.RW.Code;
                ret = poDAL.UpdateCurrentData(userID, obj.zTrans);
                if (!ret) throw new ApplicationException(poDAL.ErrorMessage);

                ret = DALObj.CutStock(stockOut, userID, obj.zTrans);
                if (!ret) throw new ApplicationException(DALObj.ErrorMessage);

                obj.zTrans.Commit();
                obj.CloseConnection();
            }
            catch (Exception ex)
            {
                obj.zTrans.Rollback();
                obj.CloseConnection();
                ret = false;
                _error = ex.Message;
            }
            return ret;
        }