First of all, you should use single check for both...
With the code you provided you will have
True for isWellIdExists and
True for isUploadedDateExists
for a Sep3 as per your example
because or OR condition and then negating it will get you false => Update when you should get Insert
z Sep3 will get you one true (isUploadedDateExists) and you will get update again
Similar logic goes for all other combinations, you'll only get insert if id AND date never entered into yorr system
Correct implementation should be
if (ExistsWellID_And_UpdateDate(id, date)) {
}
else
{
}
This is of course conditional on your function doing what their names imply...