You can try following code, in which first check if key is in vals or not. if key is available then check value is set or not.
def method(self, vals):
if vals.has_key('field') and not vals.get('field',False):
print "if logic"
else:
print "else logic"
If field is not empty and field is in other model then you should try with active_model.
You can pass active_model in context from calling method, based on that you can browse record or do other operation.
Ex:
def method(self, vals):
if vals.has_key('field') and not vals.get('field',False):
print "if logic"
else:
model=self._context.get('active_model')
self.env[model].browse(model)
print "else logic"
self.with_context({'active_model':'model'}).method(vals)
Using with_context user can pass context & based on context value you can easily get active model dynamically.
This may help you.