public int AddWellWorkoverCheckDuplicates(WellWorkover wellWorkover, int wellId, int wellWorkOverReasonId, int month, long year)
        {
            try
            {
                if (wellWorkover == null)
                {
                    return(-2);
                }
                using (var db = new DPRDataMigrationEngineDBEntities())
                {
                    if (db.WellWorkovers.Count(m => m.WellId == wellId && m.WellWorkOverReasonId == wellWorkOverReasonId && m.EquipmentId == wellWorkover.EquipmentId && m.Month == month && m.Year == year) > 0)
                    {
                        return(-3);
                    }

                    var processedItem = db.WellWorkovers.Add(wellWorkover);
                    db.SaveChanges();
                    return(processedItem.WellWorkOverId);
                }
            }
            catch (Exception ex)
            {
                ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
                return(0);
            }
        }
        public ActionResult EditWellWorkover(int id)
        {
            var wellWorkover = new WellWorkover();

            try
            {
                if (id < 1)
                {
                    wellWorkover.Error     = "Invalid Selection!";
                    wellWorkover.ErrorCode = -1;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                var myViewObj = new WellWorkoverServices().GetWellWorkover(id);

                if (myViewObj == null || myViewObj.WellWorkOverId < 1)
                {
                    wellWorkover.Error     = "Well Workover information could not be retrieved.";
                    wellWorkover.ErrorCode = -1;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }
                Session["_wellWorkover"] = myViewObj;
                myViewObj.ErrorCode      = myViewObj.WellWorkOverId;
                return(Json(myViewObj, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
                wellWorkover.Error     = "An unknown error was encountered. Well Workover  Information could not be retrieved.";
                wellWorkover.ErrorCode = -1;
                return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
            }
        }
        public ActionResult DeleteWellWorkover(int id)
        {
            var wellWorkover = new WellWorkover();

            try
            {
                if (id < 1)
                {
                    wellWorkover.Error     = "Invalid Selection";
                    wellWorkover.ErrorCode = 0;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }
                if (new WellWorkoverServices().DeleteWellWorkoverCheckReferences(id))
                {
                    wellWorkover.Error     = "Well Workover  Information was successfully deleted.";
                    wellWorkover.ErrorCode = 1;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                wellWorkover.Error     = "Process Failed! Please try again later";
                wellWorkover.ErrorCode = 0;
                return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
                wellWorkover.Error     = "An unknown error was encountered. Please contact the Administrator or try again later.";
                wellWorkover.ErrorCode = 0;
                return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
            }
        }
        public ActionResult AddWellWorkover(WellWorkover wellWorkover)
        {
            ModelState.Clear();
            ViewBag.LoadStatus = "0";
            try
            {
                if (!ModelState.IsValid)
                {
                    wellWorkover.Error     = "Please supply all required well Completions and try again";
                    wellWorkover.ErrorCode = -1;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                var wx = ValidateControl(wellWorkover);

                if (wx.Code < 1)
                {
                    wellWorkover.Error     = wx.Error;
                    wellWorkover.ErrorCode = -1;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                wellWorkover.Year          = wellWorkover.WorkoverDate.Year;
                wellWorkover.Month         = wellWorkover.WorkoverDate.Month;
                wellWorkover.DateCompleted = wellWorkover.WorkoverDate.ToString("yyyy/mm/dd");
                var k = new WellWorkoverServices().AddWellWorkover(wellWorkover);
                if (k < 1)
                {
                    wellWorkover.Error     = "Process Failed! Please contact the Admin or try again later";
                    wellWorkover.ErrorCode = 0;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                wellWorkover.Error          = "Record was added successfully";
                wellWorkover.ErrorCode      = 1;
                wellWorkover.WellWorkOverId = k;
                return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
                wellWorkover.Error     = "An unknown error was encountered. Request could not be serviced. Please try again later.";
                wellWorkover.ErrorCode = 0;
                return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
            }
        }
        private static GenericValidator ValidateControl(WellWorkover model)
        {
            var gVal = new GenericValidator();

            try
            {
                if (model.WellId < 1)
                {
                    gVal.Error = "Please select a invalid Well information.";
                    gVal.Code  = 0;
                    return(gVal);
                }

                if (model.EquipmentId < 1)
                {
                    gVal.Error = "Please select a valid Equipment";
                    gVal.Code  = 0;
                    return(gVal);
                }

                if (model.WellWorkOverReasonId < 1)
                {
                    gVal.Error = "Please select a valid Well Workover Reason";
                    gVal.Code  = 0;
                    return(gVal);
                }

                if (model.WorkoverDate.Year == 0001)
                {
                    gVal.Error = "Please provide a valid Workover Date";
                    gVal.Code  = 0;
                    return(gVal);
                }

                gVal.Code = 1;
                return(gVal);
            }
            catch (Exception ex)
            {
                gVal.Error = "Process validation failed. Please supply all required entries and try again.";
                gVal.Code  = 0;
                return(gVal);
            }
        }
 public int UpdateWellWorkover(WellWorkover wellWorkover)
 {
     try
     {
         if (wellWorkover == null)
         {
             return(-2);
         }
         using (var db = new DPRDataMigrationEngineDBEntities())
         {
             db.WellWorkovers.Attach(wellWorkover);
             db.Entry(wellWorkover).State = EntityState.Modified;
             return(db.SaveChanges());
         }
     }
     catch (Exception ex)
     {
         ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
         return(0);
     }
 }
 public int AddWellWorkover(WellWorkover wellWorkover)
 {
     try
     {
         if (wellWorkover == null)
         {
             return(-2);
         }
         using (var db = new DPRDataMigrationEngineDBEntities())
         {
             var processedItem = db.WellWorkovers.Add(wellWorkover);
             db.SaveChanges();
             return(processedItem.WellWorkOverId);
         }
     }
     catch (Exception ex)
     {
         ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
         return(0);
     }
 }
        public ActionResult EditWellWorkover(WellWorkover wellWorkover)
        {
            ModelState.Clear();
            ViewBag.LoadStatus = "0";
            try
            {
                if (Session["_wellWorkover"] == null)
                {
                    wellWorkover.Error     = "Session has expired";
                    wellWorkover.ErrorCode = 0;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                var oldWellWorkover = Session["_wellWorkover"] as WellWorkover;

                if (oldWellWorkover == null || oldWellWorkover.WellWorkOverId < 1)
                {
                    wellWorkover.Error     = "Session has expired";
                    wellWorkover.ErrorCode = 0;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                if (!ModelState.IsValid)
                {
                    wellWorkover.Error     = "Please supply all required entries and try again";
                    wellWorkover.ErrorCode = -1;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                var wx = ValidateControl(wellWorkover);

                if (wx.Code < 1)
                {
                    wellWorkover.Error     = wx.Error;
                    wellWorkover.ErrorCode = -1;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                oldWellWorkover.EquipmentId          = wellWorkover.EquipmentId;
                oldWellWorkover.WellId               = wellWorkover.WellId;
                oldWellWorkover.WellWorkOverReasonId = wellWorkover.WellWorkOverReasonId;
                oldWellWorkover.Year          = wellWorkover.WorkoverDate.Year;
                oldWellWorkover.Month         = wellWorkover.WorkoverDate.Month;
                oldWellWorkover.DateCompleted = wellWorkover.WorkoverDate.ToString("yyyy/mm/dd");
                wellWorkover.MonthStr         = Enum.GetName(typeof(MonthList), oldWellWorkover.Month);
                var k = new WellWorkoverServices().UpdateWellWorkover(oldWellWorkover);
                if (k < 1)
                {
                    wellWorkover.Error     = "Process Failed! Please contact the Admin or try again later";
                    wellWorkover.ErrorCode = 0;
                    return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
                }

                wellWorkover.Error     = "Well Workover Reason was successfully updated";
                wellWorkover.ErrorCode = 1;
                return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
                wellWorkover.Error     = "An unknown error was encountered. Request could not be serviced. Please try again later.";
                wellWorkover.ErrorCode = 0;
                return(Json(wellWorkover, JsonRequestBehavior.AllowGet));
            }
        }
Ejemplo n.º 9
0
        private WellWorkover ProcessRecord(DataRowView dv, ref string msg)
        {
            if (dv == null)
            {
                return(null);
            }
            try
            {
                var wellName = dv.Row["well_name"].ToString().Replace(" ", "").Replace(",", "").Trim();

                if (string.IsNullOrEmpty(wellName.Trim()))
                {
                    return(null);
                }

                var mInfo = new WellWorkover
                {
                    WellName = wellName,
                };

                var ttcg = new WellServices().GetWellIdByName(wellName);

                if (ttcg < 1)
                {
                    msg = "Well Information could not be processed";
                    return(null);
                }

                mInfo.WellId = ttcg;

                var  year = dv.Row["workover_Completion_year(yyyy)"].ToString().Trim();
                long outYear;
                var  yrResult = long.TryParse(year, out outYear);
                if (!yrResult && outYear < 1)
                {
                    msg = "Invalid Workover Completion Year.";
                    return(null);
                }
                else
                {
                    mInfo.Year = outYear;
                }
                //workover_Completion_year(yyyy)

                var month = dv.Row["workover_Completion_month(MM)"].ToString().Trim();
                int outMonth;
                var mnResult = int.TryParse(month, out outMonth);
                if (!mnResult && outMonth < 1)
                {
                    msg = "Invalid Workover Completion Month.";
                    return(null);
                }
                else
                {
                    mInfo.Month = outMonth;
                }


                mInfo.DateCompleted = outYear + "/" + outMonth + "/01";

                if (!string.IsNullOrEmpty(dv.Row["equipment_used"].ToString().Trim()))
                {
                    var dfv         = dv.Row["equipment_used"].ToString().Trim();
                    var equipmentId = new EquipmentServices().GetEquipmentId(dfv);
                    if (equipmentId < 1)
                    {
                        msg = "Equipment Information could not be processed";
                        return(null);
                    }

                    mInfo.EquipmentId = equipmentId;
                }
                else
                {
                    msg = "Equipment used is empty.";
                    return(null);
                }

                var reason = dv.Row["workover_reason"].ToString().Trim();
                if (!string.IsNullOrEmpty(reason))
                {
                    var dfv      = reason;
                    var reasonId = new WellWorkOverReasonServices().GetWellWorkOverReasonIdByName(dfv);
                    if (reasonId < 1)
                    {
                        msg = "Workover Reason Information could not be processed";
                        return(null);
                    }
                    mInfo.WellWorkOverReasonId = reasonId;
                }
                else
                {
                    msg = "Workover Reason is empty";
                    return(null);
                }
                var status = new WellWorkoverServices().AddWellWorkoverCheckDuplicates(mInfo, mInfo.WellId, mInfo.WellWorkOverReasonId, mInfo.Month, mInfo.Year);
                if (status < 1)
                {
                    if (status == -3)
                    {
                        msg = "Well workover for the same Period, Reason and Equipment already exists for this well.";
                        return(null);
                    }

                    msg = "An error encountered during upload.";
                    return(null);
                }

                mInfo.WellWorkOverId = status;
                return(mInfo);
            }
            catch (Exception ex)
            {
                ErrorLogger.LogEror(ex.StackTrace, ex.Source, ex.Message);
                return(null);
            }
        }