improve product controller