JSFiddle - React, Tailwind, and code Playground

JavaScript

const obj = {
  '1': {
    name: 'apple',
    seq: 1,
    id: 1,
  },
  '2': {
    name: 'orange',
    seq: 2,
    id: 2,
  },
  '3': {
    name: 'banana',
    seq: 3,
    id: 3,
  },
}

const moveObjects = (objId, indexToMoveTo) => {
  const objCopy = Object.values(obj).reduce((prev, curr) => {
    // if element if the one we moved - set seq to index
    if (curr.id === objId) {
      prev[curr.id] = {
        ...curr,
        seq: indexToMoveTo
      };
    } else if (curr.id !== objId) {
      // if element is not the one and index is smaller - increase seq by one
      if (curr.seq >= indexToMoveTo) {
        prev[curr.id] = {
          ...curr,
          seq: curr.seq + 1
        };
      }
      // if index bigger than seq - return the element whithout modifing it
      else if (curr.seq < indexToMoveTo) {
        prev[curr.id] = {
          ...curr
        };
      }
    }
    return prev;
  }, {})
  return objCopy
}

console.log(moveObjects(3, 2))
console.log(moveObjects(3, 2))
console.log(moveObjects(1, 3))