Esempio n. 1
0
        public Task <bool> RemoveFuelStationFromProject(dto_project_remove_fuelstationC _dto)
        {
            bool _is_removed = false;

            if (_dto == null)
            {
                AddErrorMessage("Update Error", "Save Error", "DTO Is Null!");
                _is_removed = false;
                return(Task.FromResult(_is_removed));
            }
            if (_dto.project_id == 0)
            {
                AddErrorMessage("Error", "Error", "Project Id Is Missing");
                _is_removed = false;
                return(Task.FromResult(_is_removed));
            }
            if (_dto.fuel_station_id == 0)
            {
                AddErrorMessage("Error", "Error", "Fuel Station Id Is Missing");
                _is_removed = false;
                return(Task.FromResult(_is_removed));
            }
            assign_project_fuel_stationC _existing = null;

            try
            {
                using (var _db = fnn.GetDbContext())
                {
                    _existing = (from k in _db.ASSIGN_PROJECT_FUEL_STATIONS
                                 where k.fuel_station_id == _dto.fuel_station_id & k.project_id == _dto.project_id & k.delete_id == 0
                                 select k).FirstOrDefault();
                    if (_existing == null)
                    {
                        AddErrorMessage("Error", "Error", "No Associated Assigned Object Found");
                        _is_removed = false;
                        return(Task.FromResult(_is_removed));
                    }
                    var _result = DbHelper.DeleteRecordWithDeleteId(new DbHelperDeleteRecordC()
                    {
                        pk_col_name = "un_id",
                        pk_id       = _existing.un_id,
                        table_name  = FleetManager.DbBase.tableNames.assign_fuelstation_project_tb.ToDbSchemaTable()
                    }, _db);
                    if (_result == null || _result == false)
                    {
                        AddErrorMessage("Delete Error", "Delete Error", "Error Encountered While Trying To Delete Record");
                        _is_removed = false;
                        return(Task.FromResult(_is_removed));
                    }
                    else
                    {
                        var _sql = string.Format("update {0} set no_of_fuel_stations=(no_of_fuel_stations - 1),fs_timestamp={1} where project_id={2} and delete_id=0",
                                                 _table_name.ToDbSchemaTable(), fnn.GetUnixTimeStamp(), _existing.project_id);
                        _db.Database.Connection.Execute(_sql);
                        _is_removed = true;
                        _db.SaveChanges();
                        return(Task.FromResult(_is_removed));
                    }
                }
            }
            catch (SqlException ex)
            {
                _is_removed = false;
                LoggerX.LogException(ex);
            }
            catch (DbException ex)
            {
                _is_removed = false;
                LoggerX.LogException(ex);
            }
            catch (Exception ex)
            {
                _is_removed = false;
                LoggerX.LogException(ex);
            }
            return(Task.FromResult(_is_removed));
        }
Esempio n. 2
0
        public Task <assign_project_fuel_stationC> AssignFuelStationToProject(dto_project_assign_fuelstationC _dto)
        {
            projectC      _project            = null;
            fuel_stationC _fuel_station       = null;
            assign_project_fuel_stationC _obj = null;

            if (_dto == null)
            {
                AddErrorMessage("Update Error", "Save Error", "DTO Is Null!");
                _project = null;
                return(Task.FromResult(_obj));
            }
            if (_dto.project_id == 0)
            {
                AddErrorMessage("Error", "Error", "Project Id Is Missing");
                return(Task.FromResult(_obj));
            }
            if (_dto.fuel_station_id == 0)
            {
                AddErrorMessage("Error", "Error", "Fuel Station Id Is Missing");
                return(Task.FromResult(_obj));
            }
            try
            {
                using (var _db = fnn.GetDbContext())
                {
                    _fuel_station = (from k in _db.FUEL_STATIONS
                                     where k.fuel_station_id == _dto.fuel_station_id & k.delete_id == 0
                                     select k).FirstOrDefault();
                    if (_fuel_station == null)
                    {
                        AddErrorMessage("Error", "Error", "No Associated Fuel Station Found");
                        _obj = null;
                        return(Task.FromResult(_obj));
                    }
                    _project = (from k in _db.PROJECTS
                                where k.project_id == _dto.project_id & k.delete_id == 0
                                select k).FirstOrDefault();
                    if (_project == null)
                    {
                        AddErrorMessage("Error", "Error", "No Associated Project Found");
                        _obj = null;
                        return(Task.FromResult(_obj));
                    }
                    _obj = new assign_project_fuel_stationC()
                    {
                        project_id         = _project.project_id,
                        fuel_station_id    = _fuel_station.fuel_station_id,
                        created_by_user_id = m_logged_user.user_id,
                        fs_timestamp       = fnn.GetUnixTimeStamp(),
                        server_edate       = fnn.GetServerDate()
                    };
                    _db.ASSIGN_PROJECT_FUEL_STATIONS.Add(_obj);
                    var _retVal = _db.SaveChangesWithDuplicateKeyDetected();
                    if (_retVal == null || _retVal.Value == true)
                    {
                        AddErrorMessage("Duplicate Key Error", "Duplicate Key Error", "You Have Entered A Duplicate Fuel Station Assignment");
                        _obj = null;
                        return(Task.FromResult(_obj));
                    }
                    var _sql = string.Format("update {0} set no_of_fuel_stations=(no_of_fuel_stations + 1),fs_timestamp={1} where project_id={2} and delete_id=0",
                                             _table_name.ToDbSchemaTable(), fnn.GetUnixTimeStamp(), _project.project_id);
                    _db.Database.Connection.Execute(_sql);
                    _db.SaveChanges();
                    //
                }
            }
            catch (SqlException ex)
            {
                _obj = null;
                LoggerX.LogException(ex);
            }
            catch (DbException ex)
            {
                _obj = null;
                LoggerX.LogException(ex);
            }
            catch (Exception ex)
            {
                _obj = null;
                LoggerX.LogException(ex);
            }
            return(Task.FromResult(_obj));
        }